AArch64 ARMv8-csel-po
(* Final load on P0 does no depend on CSEL output *)
{
0:X7=x; 0:X8=y; 0:X9=u;
int *0:X2;
1:X7=x; 1:X8=y;
}
P0 | P1 ;
LDR W1,[X7] | MOV W0,#1 ;
CMP W1,#0 | STR W0,[X8] ;
CSEL X2,X8,X9,NE | DMB ST ;
LDR W3,[X8] | MOV W2,#1 ;
| STR W2,[X7] ;
exists (0:X1=1 /\ 0:X3=0)