On 08/17/14 15:44, Timo Sintonen via D.gnu wrote: > I am compiling for arm and I am sorry I misinterpreted the optimized code. > Actually the code is correct but it still does not work. > The problem is that the call to get the tls pointer for volatile_dummy seems > to corrupt the register (r3) where the this pointer is. The call is inside > the while loop. After removing tha call by hand in the assembly everything > works. R3 is usually pushed into stack when it is used in a function. I have > to check what is wrong in this case.
Does declaring it as: extern __gshared int volatile_dummy; help? artur