Granules (ERG) to reserve exclusives on Apple processors

Does anyone know what ERG is on the Apple A5, A5X, A6, and A6X processors?

We encountered an unclear error with the LDREX / STREX instructions, and the behavior is different from A5 and A6. The only explanation I have is that they have a different ERG, but it cannot find anything. I also could not find a way to get this value, the MRC command seems to be disabled in user mode on iOS.

Thank!

+5
source share
2 answers

In OMAP 4460 (ARM Cortex-A9, similar to Apple A5 / A5X) ERG is 32 bytes (which is the same as cache line size).

, A6/A6X ( , , Apple), - 64 , ERG.

512 (2 ).

+2

ERG ldrex/strex.

ldrex, ERG, ldrex, .

, , ldrex/strex , ldrex/strex (, , ldex).

ldrex/strex ( ERG ), .

.

ldrex/strex, ARM " " " ". , ldrex/strex , - ldrexs , strex, - ERG ldrex/strex.

ARM , , , ldrex/strex.

-1

All Articles