Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as < %s | llvm-dis | FileCheck %s |
2 | ; PR12696 | ||||
3 | |||||
4 | define void @f1(i8 zeroext) | ||||
5 | ; CHECK: define void @f1(i8 zeroext) | ||||
6 | { | ||||
7 | ret void; | ||||
8 | } | ||||
9 | |||||
10 | define void @f2(i8 signext) | ||||
11 | ; CHECK: define void @f2(i8 signext) | ||||
12 | { | ||||
13 | ret void; | ||||
14 | } | ||||
15 | |||||
16 | define void @f3() noreturn | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 17 | ; CHECK: define void @f3() #0 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 18 | { |
19 | ret void; | ||||
20 | } | ||||
21 | |||||
22 | define void @f4(i8 inreg) | ||||
23 | ; CHECK: define void @f4(i8 inreg) | ||||
24 | { | ||||
25 | ret void; | ||||
26 | } | ||||
27 | |||||
28 | define void @f5(i8* sret) | ||||
29 | ; CHECK: define void @f5(i8* sret) | ||||
30 | { | ||||
31 | ret void; | ||||
32 | } | ||||
33 | |||||
34 | define void @f6() nounwind | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 35 | ; CHECK: define void @f6() #1 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 36 | { |
37 | ret void; | ||||
38 | } | ||||
39 | |||||
40 | define void @f7(i8* noalias) | ||||
41 | ; CHECK: define void @f7(i8* noalias) | ||||
42 | { | ||||
43 | ret void; | ||||
44 | } | ||||
45 | |||||
46 | define void @f8(i8* byval) | ||||
47 | ; CHECK: define void @f8(i8* byval) | ||||
48 | { | ||||
49 | ret void; | ||||
50 | } | ||||
51 | |||||
52 | define void @f9(i8* nest) | ||||
53 | ; CHECK: define void @f9(i8* nest) | ||||
54 | { | ||||
55 | ret void; | ||||
56 | } | ||||
57 | |||||
58 | define void @f10() readnone | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 59 | ; CHECK: define void @f10() #2 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 60 | { |
61 | ret void; | ||||
62 | } | ||||
63 | |||||
64 | define void @f11() readonly | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 65 | ; CHECK: define void @f11() #3 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 66 | { |
67 | ret void; | ||||
68 | } | ||||
69 | |||||
70 | define void @f12() noinline | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 71 | ; CHECK: define void @f12() #4 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 72 | { |
73 | ret void; | ||||
74 | } | ||||
75 | |||||
76 | define void @f13() alwaysinline | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 77 | ; CHECK: define void @f13() #5 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 78 | { |
79 | ret void; | ||||
80 | } | ||||
81 | |||||
82 | define void @f14() optsize | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 83 | ; CHECK: define void @f14() #6 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 84 | { |
85 | ret void; | ||||
86 | } | ||||
87 | |||||
88 | define void @f15() ssp | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 89 | ; CHECK: define void @f15() #7 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 90 | { |
91 | ret void; | ||||
92 | } | ||||
93 | |||||
94 | define void @f16() sspreq | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 95 | ; CHECK: define void @f16() #8 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 96 | { |
97 | ret void; | ||||
98 | } | ||||
99 | |||||
100 | define void @f17(i8 align 4) | ||||
101 | ; CHECK: define void @f17(i8 align 4) | ||||
102 | { | ||||
103 | ret void; | ||||
104 | } | ||||
105 | |||||
106 | define void @f18(i8* nocapture) | ||||
107 | ; CHECK: define void @f18(i8* nocapture) | ||||
108 | { | ||||
109 | ret void; | ||||
110 | } | ||||
111 | |||||
112 | define void @f19() noredzone | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 113 | ; CHECK: define void @f19() #9 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 114 | { |
115 | ret void; | ||||
116 | } | ||||
117 | |||||
118 | define void @f20() noimplicitfloat | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 119 | ; CHECK: define void @f20() #10 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 120 | { |
121 | ret void; | ||||
122 | } | ||||
123 | |||||
124 | define void @f21() naked | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 125 | ; CHECK: define void @f21() #11 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 126 | { |
127 | ret void; | ||||
128 | } | ||||
129 | |||||
130 | define void @f22() inlinehint | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 131 | ; CHECK: define void @f22() #12 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 132 | { |
133 | ret void; | ||||
134 | } | ||||
135 | |||||
136 | define void @f23() alignstack(4) | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 137 | ; CHECK: define void @f23() #13 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 138 | { |
139 | ret void; | ||||
140 | } | ||||
141 | |||||
142 | define void @f24() returns_twice | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 143 | ; CHECK: define void @f24() #14 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 144 | { |
145 | ret void; | ||||
146 | } | ||||
147 | |||||
148 | define void @f25() uwtable | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 149 | ; CHECK: define void @f25() #15 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 150 | { |
151 | ret void; | ||||
152 | } | ||||
153 | |||||
154 | define void @f26() nonlazybind | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 155 | ; CHECK: define void @f26() #16 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 156 | { |
157 | ret void; | ||||
158 | } | ||||
159 | |||||
Kostya Serebryany | cf880b9 | 2013-02-26 06:58:09 +0000 | [diff] [blame] | 160 | define void @f27() sanitize_address |
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 161 | ; CHECK: define void @f27() #17 |
Meador Inge | e17b69a | 2012-05-28 15:45:43 +0000 | [diff] [blame] | 162 | { |
163 | ret void; | ||||
164 | } | ||||
Kostya Serebryany | cf880b9 | 2013-02-26 06:58:09 +0000 | [diff] [blame] | 165 | define void @f28() sanitize_thread |
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 166 | ; CHECK: define void @f28() #18 |
Kostya Serebryany | d688bab | 2013-02-11 08:13:54 +0000 | [diff] [blame] | 167 | { |
168 | ret void; | ||||
169 | } | ||||
Kostya Serebryany | cf880b9 | 2013-02-26 06:58:09 +0000 | [diff] [blame] | 170 | define void @f29() sanitize_memory |
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 171 | ; CHECK: define void @f29() #19 |
Kostya Serebryany | d688bab | 2013-02-11 08:13:54 +0000 | [diff] [blame] | 172 | { |
173 | ret void; | ||||
174 | } | ||||
Bill Wendling | 7321fec | 2013-02-12 09:14:20 +0000 | [diff] [blame] | 175 | |
176 | define void @f30() "cpu"="cortex-a8" | ||||
Bill Wendling | 90bc19c | 2013-02-20 07:21:42 +0000 | [diff] [blame] | 177 | ; CHECK: define void @f30() #20 |
Bill Wendling | 7321fec | 2013-02-12 09:14:20 +0000 | [diff] [blame] | 178 | { |
179 | ret void; | ||||
180 | } | ||||
181 | |||||
Tobias Grosser | 00cf535 | 2013-07-17 22:13:44 +0000 | [diff] [blame] | 182 | define i8 @f31(i8 returned %A) |
183 | ; CHECK: define i8 @f31(i8 returned %A) | ||||
184 | { | ||||
185 | ret i8 %A; | ||||
186 | } | ||||
187 | |||||
188 | define void @f32() sspstrong | ||||
189 | ; CHECK: define void @f32() #21 | ||||
190 | { | ||||
191 | ret void; | ||||
192 | } | ||||
193 | |||||
194 | define void @f33() minsize | ||||
195 | ; CHECK: define void @f33() #22 | ||||
196 | { | ||||
197 | ret void; | ||||
198 | } | ||||
199 | |||||
200 | declare void @nobuiltin() | ||||
201 | |||||
202 | define void @f34() | ||||
203 | ; CHECK: define void @f34() | ||||
204 | { | ||||
205 | call void @nobuiltin() nobuiltin | ||||
Andrea Di Biagio | 377496b | 2013-08-23 11:53:55 +0000 | [diff] [blame] | 206 | ; CHECK: call void @nobuiltin() #24 |
207 | ret void; | ||||
208 | } | ||||
209 | |||||
Paul Robinson | dcbe35b | 2013-11-18 21:44:03 +0000 | [diff] [blame] | 210 | define void @f35() optnone noinline |
Andrea Di Biagio | 377496b | 2013-08-23 11:53:55 +0000 | [diff] [blame] | 211 | ; CHECK: define void @f35() #23 |
212 | { | ||||
Tobias Grosser | 00cf535 | 2013-07-17 22:13:44 +0000 | [diff] [blame] | 213 | ret void; |
214 | } | ||||
215 | |||||
Reid Kleckner | a534a38 | 2013-12-19 02:14:12 +0000 | [diff] [blame] | 216 | define void @f36(i8* inalloca) { |
217 | ; CHECK: define void @f36(i8* inalloca) { | ||||
218 | ret void | ||||
219 | } | ||||
220 | |||||
Bill Wendling | 7321fec | 2013-02-12 09:14:20 +0000 | [diff] [blame] | 221 | ; CHECK: attributes #0 = { noreturn } |
222 | ; CHECK: attributes #1 = { nounwind } | ||||
223 | ; CHECK: attributes #2 = { readnone } | ||||
224 | ; CHECK: attributes #3 = { readonly } | ||||
225 | ; CHECK: attributes #4 = { noinline } | ||||
226 | ; CHECK: attributes #5 = { alwaysinline } | ||||
227 | ; CHECK: attributes #6 = { optsize } | ||||
228 | ; CHECK: attributes #7 = { ssp } | ||||
229 | ; CHECK: attributes #8 = { sspreq } | ||||
230 | ; CHECK: attributes #9 = { noredzone } | ||||
231 | ; CHECK: attributes #10 = { noimplicitfloat } | ||||
232 | ; CHECK: attributes #11 = { naked } | ||||
233 | ; CHECK: attributes #12 = { inlinehint } | ||||
234 | ; CHECK: attributes #13 = { alignstack=4 } | ||||
235 | ; CHECK: attributes #14 = { returns_twice } | ||||
236 | ; CHECK: attributes #15 = { uwtable } | ||||
237 | ; CHECK: attributes #16 = { nonlazybind } | ||||
Kostya Serebryany | cf880b9 | 2013-02-26 06:58:09 +0000 | [diff] [blame] | 238 | ; CHECK: attributes #17 = { sanitize_address } |
239 | ; CHECK: attributes #18 = { sanitize_thread } | ||||
240 | ; CHECK: attributes #19 = { sanitize_memory } | ||||
Bill Wendling | 7321fec | 2013-02-12 09:14:20 +0000 | [diff] [blame] | 241 | ; CHECK: attributes #20 = { "cpu"="cortex-a8" } |
Tobias Grosser | 00cf535 | 2013-07-17 22:13:44 +0000 | [diff] [blame] | 242 | ; CHECK: attributes #21 = { sspstrong } |
243 | ; CHECK: attributes #22 = { minsize } | ||||
Paul Robinson | dcbe35b | 2013-11-18 21:44:03 +0000 | [diff] [blame] | 244 | ; CHECK: attributes #23 = { noinline optnone } |
Andrea Di Biagio | 377496b | 2013-08-23 11:53:55 +0000 | [diff] [blame] | 245 | ; CHECK: attributes #24 = { nobuiltin } |
246 |