241 lines · plain
1; RUN: llc -mtriple=mipsel-linux-gnu -mattr=mips16 -mattr=+soft-float -mips16-hard-float -relocation-model=static < %s | FileCheck %s -check-prefix=ci2 3@i = global i32 0, align 44@j = common global i32 0, align 45@k = common global i32 0, align 46 7; Function Attrs: nounwind optsize8define i32 @x0() #0 {9entry:10 %0 = load i32, ptr @i, align 4, !tbaa !111 %cmp = icmp eq i32 %0, 012 br i1 %cmp, label %if.then, label %if.else13 14if.then: ; preds = %entry15 tail call void asm sideeffect ".space 1000", ""() #1, !srcloc !516 br label %if.end17 18if.else: ; preds = %entry19 tail call void asm sideeffect ".space 1004", ""() #1, !srcloc !620 br label %if.end21 22if.end: ; preds = %if.else, %if.then23 %storemerge = phi i32 [ 1, %if.else ], [ 0, %if.then ]24 store i32 %storemerge, ptr @i, align 4, !tbaa !125 ret i32 026}27 28; ci: .ent x029; ci: beqz $3, $BB0_230; ci: $BB0_2:31; ci: .end x032 33; Function Attrs: nounwind optsize34define i32 @x1() #0 {35entry:36 %0 = load i32, ptr @i, align 4, !tbaa !137 %cmp = icmp eq i32 %0, 038 br i1 %cmp, label %if.then, label %if.else39 40if.then: ; preds = %entry41 tail call void asm sideeffect ".space 1000000", ""() #1, !srcloc !742 br label %if.end43 44if.else: ; preds = %entry45 tail call void asm sideeffect ".space 1000004", ""() #1, !srcloc !846 br label %if.end47 48if.end: ; preds = %if.else, %if.then49 %storemerge = phi i32 [ 1, %if.else ], [ 0, %if.then ]50 store i32 %storemerge, ptr @i, align 4, !tbaa !151 ret i32 052}53 54; ci: .ent x155; ci: bnez $3, $BB1_1 # 16 bit inst56; ci: jal $BB1_2 # branch57; ci: nop58; ci: $BB1_1:59; ci: .end x160 61; Function Attrs: nounwind optsize62define i32 @y0() #0 {63entry:64 %0 = load i32, ptr @i, align 4, !tbaa !165 %cmp = icmp eq i32 %0, 066 br i1 %cmp, label %if.then, label %if.else67 68if.then: ; preds = %entry69 store i32 10, ptr @j, align 4, !tbaa !170 tail call void asm sideeffect ".space 1000", ""() #1, !srcloc !971 br label %if.end72 73if.else: ; preds = %entry74 store i32 55, ptr @j, align 4, !tbaa !175 tail call void asm sideeffect ".space 1004", ""() #1, !srcloc !1076 br label %if.end77 78if.end: ; preds = %if.else, %if.then79 ret i32 080}81 82; ci: .ent y083; ci: beqz $2, $BB2_284; ci: .end y085 86; Function Attrs: nounwind optsize87define i32 @y1() #0 {88entry:89 %0 = load i32, ptr @i, align 4, !tbaa !190 %cmp = icmp eq i32 %0, 091 br i1 %cmp, label %if.then, label %if.else92 93if.then: ; preds = %entry94 store i32 10, ptr @j, align 4, !tbaa !195 tail call void asm sideeffect ".space 1000000", ""() #1, !srcloc !1196 br label %if.end97 98if.else: ; preds = %entry99 store i32 55, ptr @j, align 4, !tbaa !1100 tail call void asm sideeffect ".space 1000004", ""() #1, !srcloc !12101 br label %if.end102 103if.end: ; preds = %if.else, %if.then104 ret i32 0105}106 107; ci: .ent y1108; ci: bnez $2, $BB3_1 # 16 bit inst109; ci: jal $BB3_2 # branch110; ci: nop111; ci: $BB3_1:112; ci: .end y1113 114; Function Attrs: nounwind optsize115define void @z0() #0 {116entry:117 %0 = load i32, ptr @i, align 4, !tbaa !1118 %1 = load i32, ptr @j, align 4, !tbaa !1119 %cmp = icmp eq i32 %0, %1120 br i1 %cmp, label %if.then, label %if.else121 122if.then: ; preds = %entry123 store i32 1, ptr @k, align 4, !tbaa !1124 tail call void asm sideeffect ".space 10000", ""() #1, !srcloc !13125 br label %if.end126 127if.else: ; preds = %entry128 tail call void asm sideeffect ".space 10004", ""() #1, !srcloc !14129 store i32 2, ptr @k, align 4, !tbaa !1130 br label %if.end131 132if.end: ; preds = %if.else, %if.then133 ret void134}135 136; ci: .ent z0137; ci: btnez $BB4_2138; ci: .end z0139 140; Function Attrs: nounwind optsize141define void @z1() #0 {142entry:143 %0 = load i32, ptr @i, align 4, !tbaa !1144 %1 = load i32, ptr @j, align 4, !tbaa !1145 %cmp = icmp eq i32 %0, %1146 br i1 %cmp, label %if.then, label %if.else147 148if.then: ; preds = %entry149 store i32 1, ptr @k, align 4, !tbaa !1150 tail call void asm sideeffect ".space 10000000", ""() #1, !srcloc !15151 br label %if.end152 153if.else: ; preds = %entry154 tail call void asm sideeffect ".space 10000004", ""() #1, !srcloc !16155 store i32 2, ptr @k, align 4, !tbaa !1156 br label %if.end157 158if.end: ; preds = %if.else, %if.then159 ret void160}161 162; ci: .ent z1163; ci: bteqz $BB5_1 # 16 bit inst164; ci: jal $BB5_2 # branch165; ci: nop166; ci: $BB5_1:167; ci: .end z1168 169; Function Attrs: nounwind optsize170define void @z3() #0 {171entry:172 %0 = load i32, ptr @i, align 4, !tbaa !1173 %1 = load i32, ptr @j, align 4, !tbaa !1174 %cmp1 = icmp sgt i32 %0, %1175 br i1 %cmp1, label %if.then, label %if.end176 177if.then: ; preds = %entry, %if.then178 tail call void asm sideeffect ".space 10000", ""() #1, !srcloc !17179 %2 = load i32, ptr @i, align 4, !tbaa !1180 %3 = load i32, ptr @j, align 4, !tbaa !1181 %cmp = icmp sgt i32 %2, %3182 br i1 %cmp, label %if.then, label %if.end183 184if.end: ; preds = %if.then, %entry185 ret void186}187 188; ci: .ent z3189; ci: bteqz $BB6_2190; ci: .end z3191 192; Function Attrs: nounwind optsize193define void @z4() #0 {194entry:195 %0 = load i32, ptr @i, align 4, !tbaa !1196 %1 = load i32, ptr @j, align 4, !tbaa !1197 %cmp1 = icmp sgt i32 %0, %1198 br i1 %cmp1, label %if.then, label %if.end199 200if.then: ; preds = %entry, %if.then201 tail call void asm sideeffect ".space 10000000", ""() #1, !srcloc !18202 %2 = load i32, ptr @i, align 4, !tbaa !1203 %3 = load i32, ptr @j, align 4, !tbaa !1204 %cmp = icmp sgt i32 %2, %3205 br i1 %cmp, label %if.then, label %if.end206 207if.end: ; preds = %if.then, %entry208 ret void209}210 211; ci: .ent z4212; ci: btnez $BB7_1 # 16 bit inst213; ci: jal $BB7_2 # branch214; ci: nop215; ci: $BB7_1:216; ci: .p2align 2217; ci: .end z4218 219attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "use-soft-float"="false" }220attributes #1 = { nounwind }221 222 223!1 = !{!2, !2, i64 0}224!2 = !{!"int", !3, i64 0}225!3 = !{!"omnipotent char", !4, i64 0}226!4 = !{!"Simple C/C++ TBAA"}227!5 = !{i32 57}228!6 = !{i32 107}229!7 = !{i32 188}230!8 = !{i32 241}231!9 = !{i32 338}232!10 = !{i32 391}233!11 = !{i32 477}234!12 = !{i32 533}235!13 = !{i32 621}236!14 = !{i32 663}237!15 = !{i32 747}238!16 = !{i32 792}239!17 = !{i32 867}240!18 = !{i32 953}241