1 typedef	  signed int	sint;
2 typedef	unsigned int	uint;
3 
seq(sint p,sint a)4 sint seq(sint p, sint a) { return (123 == p) ? a : 0; }
sne(sint p,sint a)5 sint sne(sint p, sint a) { return (123 != p) ? a : 0; }
6 
slt(sint p,sint a)7 sint slt(sint p, sint a) { return (123 >  p) ? a : 0; }
sle(sint p,sint a)8 sint sle(sint p, sint a) { return (123 >= p) ? a : 0; }
sge(sint p,sint a)9 sint sge(sint p, sint a) { return (123 <= p) ? a : 0; }
sgt(sint p,sint a)10 sint sgt(sint p, sint a) { return (123 <  p) ? a : 0; }
11 
ueq(uint p,uint a)12 uint ueq(uint p, uint a) { return (123 == p) ? a : 0; }
une(uint p,uint a)13 uint une(uint p, uint a) { return (123 != p) ? a : 0; }
14 
ubt(uint p,uint a)15 uint ubt(uint p, uint a) { return (123 >  p) ? a : 0; }
ube(uint p,uint a)16 uint ube(uint p, uint a) { return (123 >= p) ? a : 0; }
uae(uint p,uint a)17 uint uae(uint p, uint a) { return (123 <= p) ? a : 0; }
uat(uint p,uint a)18 uint uat(uint p, uint a) { return (123 <  p) ? a : 0; }
19 
20 /*
21  * check-name: canonical-cmp
22  * check-command: test-linearize -Wno-decl $file
23  *
24  * check-output-excludes: \\$123,
25  *
26  * check-output-start
27 seq:
28 .L0:
29 	<entry-point>
30 	seteq.32    %r3 <- %arg1, $123
31 	select.32   %r4 <- %r3, %arg2, $0
32 	ret.32      %r4
33 
34 
35 sne:
36 .L2:
37 	<entry-point>
38 	setne.32    %r8 <- %arg1, $123
39 	select.32   %r9 <- %r8, %arg2, $0
40 	ret.32      %r9
41 
42 
43 slt:
44 .L4:
45 	<entry-point>
46 	setlt.32    %r13 <- %arg1, $123
47 	select.32   %r14 <- %r13, %arg2, $0
48 	ret.32      %r14
49 
50 
51 sle:
52 .L6:
53 	<entry-point>
54 	setle.32    %r18 <- %arg1, $123
55 	select.32   %r19 <- %r18, %arg2, $0
56 	ret.32      %r19
57 
58 
59 sge:
60 .L8:
61 	<entry-point>
62 	setge.32    %r23 <- %arg1, $123
63 	select.32   %r24 <- %r23, %arg2, $0
64 	ret.32      %r24
65 
66 
67 sgt:
68 .L10:
69 	<entry-point>
70 	setgt.32    %r28 <- %arg1, $123
71 	select.32   %r29 <- %r28, %arg2, $0
72 	ret.32      %r29
73 
74 
75 ueq:
76 .L12:
77 	<entry-point>
78 	seteq.32    %r33 <- %arg1, $123
79 	select.32   %r34 <- %r33, %arg2, $0
80 	ret.32      %r34
81 
82 
83 une:
84 .L14:
85 	<entry-point>
86 	setne.32    %r38 <- %arg1, $123
87 	select.32   %r39 <- %r38, %arg2, $0
88 	ret.32      %r39
89 
90 
91 ubt:
92 .L16:
93 	<entry-point>
94 	setb.32     %r43 <- %arg1, $123
95 	select.32   %r44 <- %r43, %arg2, $0
96 	ret.32      %r44
97 
98 
99 ube:
100 .L18:
101 	<entry-point>
102 	setbe.32    %r48 <- %arg1, $123
103 	select.32   %r49 <- %r48, %arg2, $0
104 	ret.32      %r49
105 
106 
107 uae:
108 .L20:
109 	<entry-point>
110 	setae.32    %r53 <- %arg1, $123
111 	select.32   %r54 <- %r53, %arg2, $0
112 	ret.32      %r54
113 
114 
115 uat:
116 .L22:
117 	<entry-point>
118 	seta.32     %r58 <- %arg1, $123
119 	select.32   %r59 <- %r58, %arg2, $0
120 	ret.32      %r59
121 
122 
123  * check-output-end
124  */
125