AArch64 Z6.2+dmb.sy+dmb.st+ctrl "DMB.SYdWW Rfe DMB.STdRW Rfe DpCtrldW Wse" Cycle=Rfe DMB.STdRW Rfe DpCtrldW Wse DMB.SYdWW Relax= Safe=Rfe Wse DMB.STdRW DMB.SYdWW DpCtrldW Prefetch=0:x=F,0:y=W,1:y=F,1:z=W,2:z=F,2:x=W Com=Rf Rf Ws Orig=DMB.SYdWW Rfe DMB.STdRW Rfe DpCtrldW Wse { 0:X1=x; 0:X3=y; 1:X1=y; 1:X3=z; 2:X1=z; 2:X3=x; } P0 | P1 | P2 ; MOV W0,#2 | LDR W0,[X1] | LDR W0,[X1] ; STR W0,[X1] | DMB ST | CBNZ W0,LC00 ; DMB SY | MOV W2,#1 | LC00: ; MOV W2,#1 | STR W2,[X3] | MOV W2,#1 ; STR W2,[X3] | | STR W2,[X3] ; Observed x=2; 2:X0=1; 1:X0=1;