brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 1289da2 Raw
48 lines · plain
1; RUN: llc < %s -mtriple=thumbv8 -arm-atomic-cfg-tidy=0 -arm-restrict-it | FileCheck %s2; RUN: llc < %s -mtriple=thumbv7 -arm-atomic-cfg-tidy=0 -arm-restrict-it | FileCheck %s3; CHECK: it ne4; CHECK-NEXT: cmpne5; CHECK-NEXT: bne [[JUMPTARGET:.LBB[0-9]+_[0-9]+]]6; CHECK: cbz7; CHECK-NEXT: %if.else1638; CHECK-NEXT: mov.w9; CHECK-NEXT: b10; CHECK: %if.else14511; CHECK-NEXT: mov.w12; CHECK: pop.w13; CHECK: [[JUMPTARGET]]:{{.*}}%if.else17314; CHECK-NEXT: mov.w15; CHECK-NEXT: bx lr16 17%struct.hc = type { i32, i32, i32, i32 }18 19define i32 @t(i32 %type) optsize {20entry:21  switch i32 %type, label %if.else173 [22    i32 13, label %if.then11523    i32 6, label %if.then10224  ]25 26if.then102:27 br label %if.then11528 29if.then115:30  br i1 undef, label %if.else163, label %if.else14531 32if.else145:33  %call150 = call fastcc ptr @foo(ptr undef, i32 34865152) optsize34  br label %while.body17235 36if.else163:37  %call168 = call fastcc ptr @foo(ptr undef, i32 34078720) optsize38  br label %while.body17239 40while.body172:41  br label %while.body17242 43if.else173:44  ret i32 -145}46 47declare hidden fastcc ptr @foo(ptr nocapture, i32) nounwind optsize48