[Gc] Alpha issue running test_stack
Michael Cree
mcree at orcon.net.nz
Mon Oct 22 15:37:33 PDT 2012
On 22/10/2012, at 8:08 PM, Ivan Maidanski wrote:
> I guess you haven't got time to inspect assembly of broken code
> (Alpha target).
I was busy at the time but then I totally forgot about this!
> I think it would be ok for now, just to find which use of
> AO_EXPECT_FALSE results in broken code and create a workaround
> avoiding AO_EXPECT_FALSE exactly at that place.
Interestingly doing any one of options 2 or 3 result in the test suite
passing.
> 2. AO_stack_pop_explicit_aux_acquire:
> if (AO_EXPECT_FALSE(first != AO_load(list))) {
> ->
> if (first != AO_load(list)) {
>
> 3. AO_stack_pop_explicit_aux_acquire:
> if (AO_EXPECT_FALSE(!AO_compare_and_swap_release(list, first,
> next))) {
> ->
> if (!AO_compare_and_swap_release(list, first, next)) {
They are quite close together in the code. I wonder if there is some
interaction between them. I really must look at the generated
assembly to see if the compiler is at fault but that will probably
have to wait another day or two.
Cheers
Michael.
More information about the Gc
mailing list