diff options
Diffstat (limited to 'llvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir')
-rw-r--r-- | llvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir b/llvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir new file mode 100644 index 00000000000..b93697857e7 --- /dev/null +++ b/llvm/test/CodeGen/MIR/ARM/nested-instruction-bundle-error.mir @@ -0,0 +1,30 @@ +# RUN: not llc -mtriple thumbv7-apple-ios -start-after block-placement -stop-after block-placement -o /dev/null %s 2>&1 | FileCheck %s + +--- | + define i32 @test1(i32 %a) { + entry: + %cmp = icmp sgt i32 %a, -78 + %. = zext i1 %cmp to i32 + ret i32 %. + } +... +--- +name: test1 +tracksRegLiveness: true +liveins: + - { reg: '%r0' } +body: | + bb.0.entry: + liveins: %r0 + %r1 = t2MOVi 0, 14, _, _ + t2CMNri killed %r0, 78, 14, _, implicit-def %cpsr + BUNDLE implicit-def dead %itstate, implicit-def %r1, implicit killed %cpsr { + t2IT 12, 8, implicit-def %itstate + %r1 = t2MOVi 1, 12, killed %cpsr, _ + ; CHECK: [[@LINE+1]]:14: nested instruction bundles are not allowed + BUNDLE { + } + } + %r0 = tMOVr killed %r1, 14, _ + tBX_RET 14, _, implicit killed %r0 +... |