28 lines · plain
1C R+poonceonces2 3(*4 * Result: Sometimes5 *6 * This is the unordered (thus lacking smp_mb()) version of one of the7 * classic counterintuitive litmus tests that illustrates the effects of8 * store propagation delays.9 *)10 11{}12 13P0(int *x, int *y)14{15 WRITE_ONCE(*x, 1);16 WRITE_ONCE(*y, 1);17}18 19P1(int *x, int *y)20{21 int r0;22 23 WRITE_ONCE(*y, 2);24 r0 = READ_ONCE(*x);25}26 27exists (y=2 /\ 1:r0=0)28