OK, sorry if I wasn't clear. I understand the mechanism with the library call,
but what I don't, is why the code below, where the load exclusive establishes
the address reservation and we do it until the store exclusive succeed doesn't
fix the problem.

1: LDREX  r2, [r0]
    STREX  r1, r2, [r0]
    TEQ      r1, #0
    BNE      1b

Cheers,
Yvan

> It's a correctness issue on ARM. It won't work till the architecture
> changes. If it isn't correct, there's no point being fast :) . Taking off 
> list as I wasn't a
> 100% sure what you meant there.
>
> If you really need something like that you'll need a library call and
> the library call deals with it by doing an atomic access of the 
> correspondingly
> rounded up size from an appropriately rounded down address.
>
>
> regards,
> Ramana
>

_______________________________________________
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain

Reply via email to