1int and_0(int a)
2{
3	return a && 0;
4}
5
6int and_1(int a)
7{
8	return a && 1;
9}
10
11int or_0(int a)
12{
13	return a || 0;
14}
15
16int or_1(int a)
17{
18	return a || 1;
19}
20
21// try again but with something true but != 1
22int and_2(int a)
23{
24	return a && 2;
25}
26
27int or_2(int a)
28{
29	return a || 2;
30}
31
32/*
33 * check-name: bool-simplify
34 * check-command: test-linearize -Wno-decl $file
35 *
36 * check-output-start
37and_0:
38.L0:
39	<entry-point>
40	ret.32      $0
41
42
43and_1:
44.L2:
45	<entry-point>
46	setne.32    %r9 <- %arg1, $0
47	ret.32      %r9
48
49
50or_0:
51.L4:
52	<entry-point>
53	setne.32    %r14 <- %arg1, $0
54	ret.32      %r14
55
56
57or_1:
58.L6:
59	<entry-point>
60	ret.32      $1
61
62
63and_2:
64.L8:
65	<entry-point>
66	setne.32    %r25 <- %arg1, $0
67	ret.32      %r25
68
69
70or_2:
71.L10:
72	<entry-point>
73	ret.32      $1
74
75
76 * check-output-end
77 */
78