RISCV SWAP-LR-SC { 0:x5=x; 1:x5=x; } P0 | P1 ; ori x6,x0,1 | ori x6,x0,2 ; lr.w x7,0(x5) | lr.w x7,0(x5) ; sc.w x8,x6,0(x5) | sc.w x8,x6,0(x5) ; locations[0:x7;1:x7;] filter 0:x8=0 /\ 1:x8=0 forall (x=1 /\ 1:x7=0 /\ 0:x7=2) \/ (0:x7=0 /\ x=2 /\ 1:x7=1)