AArch64 ARMARM05 "Rfe PodRWPL RfeLP DpAddrdR Fre" Prefetch=1:x=F,1:y=W,2:y=F,2:x=T Com=Rf Rf Fr Orig=Rfe PodRWPL RfeLP DpAddrdR Fre { 0:X1=x; 1:X1=x; 1:X3=y; 2:X1=y; 2:X4=x; 2:X3=-1; } P0 | P1 | P2 ; MOV W0,#1 | LDR W0,[X1] | LDR W0,[X1] ; STR W0,[X1] | CMP W0,#1 | CMP W0,#1 ; | B.NE Exit1 | B.NE Exit2 ; | MOV W2,#1 | EOR W2,W0,W0 ; | STLR W2,[X3] | LDR W3,[X4,W2,SXTW] ; | Exit1: | Exit2: ; ~exists (1:X0=1 /\ 2:X0=1 /\ 2:X3=0) (* ARM ARM F.2.3, basically WRC+ctrlpl+addr *)