PR8921: LDM/POP do not support interworking prior to v5t.
[oota-llvm.git] / test / CodeGen / ARM / 2008-09-14-CoalescerBug.ll
1 ; RUN: llc < %s -mtriple=arm-apple-darwin
2
3 @"\01LC1" = external constant [288 x i8]                ; <[288 x i8]*> [#uses=1]
4
5 declare void @llvm.memcpy.i32(i8*, i8*, i32, i32) nounwind
6
7 define i32 @main(i32 %argc, i8** %argv) nounwind {
8 entry:
9         br label %bb.i
10
11 bb.i:           ; preds = %bb.i, %entry
12         %i.01.i = phi i32 [ 0, %entry ], [ %indvar.next52, %bb.i ]              ; <i32> [#uses=1]
13         %indvar.next52 = add i32 %i.01.i, 1             ; <i32> [#uses=2]
14         %exitcond53 = icmp eq i32 %indvar.next52, 15            ; <i1> [#uses=1]
15         br i1 %exitcond53, label %bb.i33.loopexit, label %bb.i
16
17 bb.i33.loopexit:                ; preds = %bb.i
18         %0 = malloc [347 x i8]          ; <[347 x i8]*> [#uses=2]
19         %.sub = getelementptr [347 x i8]* %0, i32 0, i32 0              ; <i8*> [#uses=1]
20         call void @llvm.memcpy.i32( i8* %.sub, i8* getelementptr ([288 x i8]* @"\01LC1", i32 0, i32 0), i32 287, i32 1 ) nounwind
21         br label %bb.i28
22
23 bb.i28:         ; preds = %bb.i28, %bb.i33.loopexit
24         br i1 false, label %repeat_fasta.exit, label %bb.i28
25
26 repeat_fasta.exit:              ; preds = %bb.i28
27         free [347 x i8]* %0
28         unreachable
29 }