or_not0(int a)1*c85f09ccSJohn Levon int  or_not0(int a) { return a | ~0; }
and_not0(int a)2*c85f09ccSJohn Levon int and_not0(int a) { return a & ~0; }
xor_not0(int a)3*c85f09ccSJohn Levon int xor_not0(int a) { return a ^ ~0; }
4*c85f09ccSJohn Levon 
5*c85f09ccSJohn Levon /*
6*c85f09ccSJohn Levon  * check-name: bool-not-zero
7*c85f09ccSJohn Levon  * check-command: test-linearize -Wno-decl $file
8*c85f09ccSJohn Levon  *
9*c85f09ccSJohn Levon  * check-output-start
10*c85f09ccSJohn Levon or_not0:
11*c85f09ccSJohn Levon .L0:
12*c85f09ccSJohn Levon 	<entry-point>
13*c85f09ccSJohn Levon 	ret.32      $0xffffffff
14*c85f09ccSJohn Levon 
15*c85f09ccSJohn Levon 
16*c85f09ccSJohn Levon and_not0:
17*c85f09ccSJohn Levon .L2:
18*c85f09ccSJohn Levon 	<entry-point>
19*c85f09ccSJohn Levon 	ret.32      %arg1
20*c85f09ccSJohn Levon 
21*c85f09ccSJohn Levon 
22*c85f09ccSJohn Levon xor_not0:
23*c85f09ccSJohn Levon .L4:
24*c85f09ccSJohn Levon 	<entry-point>
25*c85f09ccSJohn Levon 	not.32      %r8 <- %arg1
26*c85f09ccSJohn Levon 	ret.32      %r8
27*c85f09ccSJohn Levon 
28*c85f09ccSJohn Levon 
29*c85f09ccSJohn Levon  * check-output-end
30*c85f09ccSJohn Levon  */
31