Run LB+dmb+data in model, using armmem
ARM LB+dmb+data "DMBdRW Rfe DpDatadW Rfe" Cycle=Rfe DMBdRW Rfe DpDatadW { %x0=x; %y0=y; %y1=y; %x1=x; } P0 | P1 ; LDR R0, [%x0] | LDR R0, [%y1] ; DMB | EOR R1,R0,R0 ; MOV R1, #1 | ADD R1, R1, #1 ; STR R1, [%y0] | STR R1, [%x1] ; exists (0:R0=1 /\ 1:R0=1)