Fix part 1 of pr4682. PICADD is a 16-bit instruction even in thumb2 mode.
[llvm/avr.git] / test / CodeGen / ARM / 2009-06-04-MissingLiveIn.ll
blob5eaae7aa9b46d2d77c2d8a1b1700c6ce12761a20
1 ; RUN: llvm-as < %s | llc -mtriple=arm-apple-darwin -mattr=+v6
3         %struct.anon = type { i16, i16 }
4         %struct.cab_archive = type { i32, i16, i16, i16, i16, i8, %struct.cab_folder*, %struct.cab_file* }
5         %struct.cab_file = type { i32, i16, i64, i8*, i32, i32, i32, %struct.cab_folder*, %struct.cab_file*, %struct.cab_archive*, %struct.cab_state* }
6         %struct.cab_folder = type { i16, i16, %struct.cab_archive*, i64, %struct.cab_folder* }
7         %struct.cab_state = type { i8*, i8*, [38912 x i8], i16, i16, i8*, i16 }
8         %struct.qtm_model = type { i32, i32, %struct.anon* }
9         %struct.qtm_stream = type { i32, i32, i8, i8*, i32, i32, i32, i16, i16, i16, i8, i32, i8*, i8*, i8*, i8*, i8*, i32, i32, i8, [42 x i32], [42 x i8], [27 x i8], [27 x i8], %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, [65 x %struct.anon], [65 x %struct.anon], [65 x %struct.anon], [65 x %struct.anon], [25 x %struct.anon], [37 x %struct.anon], [43 x %struct.anon], [28 x %struct.anon], [8 x %struct.anon], %struct.cab_file*, i32 (%struct.cab_file*, i8*, i32)* }
11 declare fastcc i32 @qtm_read_input(%struct.qtm_stream* nocapture) nounwind
13 define fastcc i32 @qtm_decompress(%struct.qtm_stream* %qtm, i64 %out_bytes) nounwind {
14 entry:
15         br i1 undef, label %bb245, label %bb3
17 bb3:            ; preds = %entry
18         br i1 undef, label %bb5, label %bb4
20 bb4:            ; preds = %bb3
21         ret i32 undef
23 bb5:            ; preds = %bb3
24         br i1 undef, label %bb245, label %bb14
26 bb14:           ; preds = %bb5
27         br label %bb238
29 bb28:           ; preds = %bb215
30         br label %bb31
32 bb29:           ; preds = %bb31
33         br i1 undef, label %bb31, label %bb32
35 bb31:           ; preds = %bb29, %bb28
36         br i1 undef, label %bb29, label %bb32
38 bb32:           ; preds = %bb31, %bb29
39         br label %bb33
41 bb33:           ; preds = %bb33, %bb32
42         br i1 undef, label %bb34, label %bb33
44 bb34:           ; preds = %bb33
45         br i1 undef, label %bb35, label %bb36
47 bb35:           ; preds = %bb34
48         br label %bb36
50 bb36:           ; preds = %bb46, %bb35, %bb34
51         br i1 undef, label %bb40, label %bb37
53 bb37:           ; preds = %bb36
54         br i1 undef, label %bb77, label %bb60
56 bb40:           ; preds = %bb36
57         br i1 undef, label %bb46, label %bb41
59 bb41:           ; preds = %bb40
60         br i1 undef, label %bb45, label %bb42
62 bb42:           ; preds = %bb41
63         ret i32 undef
65 bb45:           ; preds = %bb41
66         br label %bb46
68 bb46:           ; preds = %bb45, %bb40
69         br label %bb36
71 bb60:           ; preds = %bb60, %bb37
72         br label %bb60
74 bb77:           ; preds = %bb37
75         switch i32 undef, label %bb197 [
76                 i32 5, label %bb108
77                 i32 6, label %bb138
78         ]
80 bb108:          ; preds = %bb77
81         br label %bb111
83 bb109:          ; preds = %bb111
84         br i1 undef, label %bb111, label %bb112
86 bb111:          ; preds = %bb109, %bb108
87         br i1 undef, label %bb109, label %bb112
89 bb112:          ; preds = %bb111, %bb109
90         br label %bb113
92 bb113:          ; preds = %bb113, %bb112
93         br i1 undef, label %bb114, label %bb113
95 bb114:          ; preds = %bb113
96         br i1 undef, label %bb115, label %bb116
98 bb115:          ; preds = %bb114
99         br label %bb116
101 bb116:          ; preds = %bb115, %bb114
102         br i1 undef, label %bb120, label %bb117
104 bb117:          ; preds = %bb116
105         br label %bb136
107 bb120:          ; preds = %bb116
108         ret i32 undef
110 bb128:          ; preds = %bb136
111         br i1 undef, label %bb134, label %bb129
113 bb129:          ; preds = %bb128
114         br i1 undef, label %bb133, label %bb130
116 bb130:          ; preds = %bb129
117         br i1 undef, label %bb132, label %bb131
119 bb131:          ; preds = %bb130
120         ret i32 undef
122 bb132:          ; preds = %bb130
123         br label %bb133
125 bb133:          ; preds = %bb132, %bb129
126         br label %bb134
128 bb134:          ; preds = %bb133, %bb128
129         br label %bb136
131 bb136:          ; preds = %bb134, %bb117
132         br i1 undef, label %bb198, label %bb128
134 bb138:          ; preds = %bb77
135         %0 = trunc i32 undef to i16             ; <i16> [#uses=1]
136         br label %bb141
138 bb139:          ; preds = %bb141
139         %scevgep441442881 = load i16* undef             ; <i16> [#uses=1]
140         %1 = icmp ugt i16 %scevgep441442881, %0         ; <i1> [#uses=1]
141         br i1 %1, label %bb141, label %bb142
143 bb141:          ; preds = %bb139, %bb138
144         br i1 undef, label %bb139, label %bb142
146 bb142:          ; preds = %bb141, %bb139
147         br label %bb143
149 bb143:          ; preds = %bb143, %bb142
150         br i1 undef, label %bb144, label %bb143
152 bb144:          ; preds = %bb143
153         br i1 undef, label %bb145, label %bb146
155 bb145:          ; preds = %bb144
156         unreachable
158 bb146:          ; preds = %bb156, %bb144
159         br i1 undef, label %bb150, label %bb147
161 bb147:          ; preds = %bb146
162         br i1 undef, label %bb157, label %bb148
164 bb148:          ; preds = %bb147
165         br i1 undef, label %bb149, label %bb157
167 bb149:          ; preds = %bb148
168         br label %bb150
170 bb150:          ; preds = %bb149, %bb146
171         br i1 undef, label %bb156, label %bb152
173 bb152:          ; preds = %bb150
174         unreachable
176 bb156:          ; preds = %bb150
177         br label %bb146
179 bb157:          ; preds = %bb148, %bb147
180         br i1 undef, label %bb167, label %bb160
182 bb160:          ; preds = %bb157
183         ret i32 undef
185 bb167:          ; preds = %bb157
186         br label %bb170
188 bb168:          ; preds = %bb170
189         br i1 undef, label %bb170, label %bb171
191 bb170:          ; preds = %bb168, %bb167
192         br i1 undef, label %bb168, label %bb171
194 bb171:          ; preds = %bb170, %bb168
195         br label %bb172
197 bb172:          ; preds = %bb172, %bb171
198         br i1 undef, label %bb173, label %bb172
200 bb173:          ; preds = %bb172
201         br i1 undef, label %bb174, label %bb175
203 bb174:          ; preds = %bb173
204         unreachable
206 bb175:          ; preds = %bb179, %bb173
207         br i1 undef, label %bb179, label %bb176
209 bb176:          ; preds = %bb175
210         br i1 undef, label %bb186, label %bb177
212 bb177:          ; preds = %bb176
213         br i1 undef, label %bb178, label %bb186
215 bb178:          ; preds = %bb177
216         br label %bb179
218 bb179:          ; preds = %bb178, %bb175
219         br label %bb175
221 bb186:          ; preds = %bb177, %bb176
222         br label %bb195
224 bb187:          ; preds = %bb195
225         br i1 undef, label %bb193, label %bb189
227 bb189:          ; preds = %bb187
228         %2 = tail call fastcc i32 @qtm_read_input(%struct.qtm_stream* %qtm) nounwind            ; <i32> [#uses=0]
229         ret i32 undef
231 bb193:          ; preds = %bb187
232         br label %bb195
234 bb195:          ; preds = %bb193, %bb186
235         br i1 undef, label %bb198, label %bb187
237 bb197:          ; preds = %bb77
238         ret i32 -124
240 bb198:          ; preds = %bb195, %bb136
241         br i1 undef, label %bb211.preheader, label %bb214
243 bb211.preheader:                ; preds = %bb198
244         br label %bb211
246 bb211:          ; preds = %bb211, %bb211.preheader
247         br i1 undef, label %bb214, label %bb211
249 bb214:          ; preds = %bb211, %bb198
250         br label %bb215
252 bb215:          ; preds = %bb238, %bb214
253         br i1 undef, label %bb28, label %bb216
255 bb216:          ; preds = %bb215
256         br label %bb238
258 bb238:          ; preds = %bb216, %bb14
259         br label %bb215
261 bb245:          ; preds = %bb5, %entry
262         ret i32 undef