db/insert_manual_states.pl: remove debug output
[smatch.git] / validation / optim / shift-shift.c
blob12a4b7d4cbedce5c94001df88677f9de3c2eb25c
1 unsigned int shl0(unsigned int x)
3 return x << 15 << 15;
6 unsigned int shl1(unsigned int x)
8 return x << 16 << 15;
11 unsigned int shl2(unsigned int x)
13 return x << 16 << 16;
16 unsigned int shl3(unsigned int x)
18 return x << 12 << 10 << 10;
22 unsigned int lsr0(unsigned int x)
24 return x >> 15 >> 15;
27 unsigned int lsr1(unsigned int x)
29 return x >> 16 >> 15;
32 unsigned int lsr2(unsigned int x)
34 return x >> 16 >> 16;
37 unsigned int lsr3(unsigned int x)
39 return x >> 12 >> 10 >> 10;
43 int asr0(int x)
45 return x >> 15 >> 15;
48 int asr1(int x)
50 return x >> 16 >> 15;
53 int asr2(int x)
55 return x >> 16 >> 16;
58 int asr3(int x)
60 return x >> 12 >> 10 >> 10;
64 * check-name: shift-shift
65 * check-command: test-linearize -Wno-decl $file
67 * check-output-start
68 shl0:
69 .L0:
70 <entry-point>
71 shl.32 %r3 <- %arg1, $30
72 ret.32 %r3
75 shl1:
76 .L2:
77 <entry-point>
78 shl.32 %r7 <- %arg1, $31
79 ret.32 %r7
82 shl2:
83 .L4:
84 <entry-point>
85 ret.32 $0
88 shl3:
89 .L6:
90 <entry-point>
91 ret.32 $0
94 lsr0:
95 .L8:
96 <entry-point>
97 lsr.32 %r20 <- %arg1, $30
98 ret.32 %r20
101 lsr1:
102 .L10:
103 <entry-point>
104 lsr.32 %r24 <- %arg1, $31
105 ret.32 %r24
108 lsr2:
109 .L12:
110 <entry-point>
111 ret.32 $0
114 lsr3:
115 .L14:
116 <entry-point>
117 ret.32 $0
120 asr0:
121 .L16:
122 <entry-point>
123 asr.32 %r37 <- %arg1, $30
124 ret.32 %r37
127 asr1:
128 .L18:
129 <entry-point>
130 asr.32 %r41 <- %arg1, $31
131 ret.32 %r41
134 asr2:
135 .L20:
136 <entry-point>
137 asr.32 %r45 <- %arg1, $31
138 ret.32 %r45
141 asr3:
142 .L22:
143 <entry-point>
144 asr.32 %r50 <- %arg1, $31
145 ret.32 %r50
148 * check-output-end