C WRC+pooncerelease+rmbonceonce+Once

(*
 * Result: Never
 *
 * This litmus test is an extension of the message-passing pattern, where
 * the first write is moved to a separate process.  Because it features
 * a release and a read memory barrier, it should be forbidden.
 *)

{}

P0(int *x)
{
	WRITE_ONCE(*x, 1);
}

P1(int *x, int *y)
{
	int r0;

	r0 = READ_ONCE(*x);
	smp_store_release(y, 1);
}

P2(int *x, int *y)
{
	int r0;
	int r1;

	r0 = READ_ONCE(*y);
	smp_rmb();
	r1 = READ_ONCE(*x);
}

exists (1:r0=1 /\ 2:r0=1 /\ 2:r1=0)
