diff options
Diffstat (limited to 'test/CodeGen/ARM/thumb2-it-block.ll')
-rw-r--r-- | test/CodeGen/ARM/thumb2-it-block.ll | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/test/CodeGen/ARM/thumb2-it-block.ll b/test/CodeGen/ARM/thumb2-it-block.ll index c5e699c155..2675a733da 100644 --- a/test/CodeGen/ARM/thumb2-it-block.ll +++ b/test/CodeGen/ARM/thumb2-it-block.ll @@ -1,15 +1,9 @@ -; RUN: llc -mtriple=thumb-eabi -mcpu=arm1156t2-s -mattr=+thumb2 %s -o - | FileCheck %s -; RUN: llc -mtriple=thumbv8 %s -o - | FileCheck %s +; RUN: llc -mtriple=thumb-eabi -mcpu=arm1156t2-s -mattr=+thumb2 %s -o - | FileCheck -check-prefix CHECK-V7 %s +; RUN: llc -mtriple=thumbv8 %s -o - | FileCheck %s -check-prefix CHECK-V8 ; PR11107 define i32 @test(i32 %a, i32 %b) { entry: -; CHECK: cmp -; CHECK-NEXT: it mi -; CHECK-NEXT: rsb{{s?}}mi -; CHECK-NEXT: cmp -; CHECK-NEXT: it mi -; CHECK-NEXT: rsb{{s?}}mi %cmp1 = icmp slt i32 %a, 0 %sub1 = sub nsw i32 0, %a %abs1 = select i1 %cmp1, i32 %sub1, i32 %a @@ -19,3 +13,18 @@ entry: %add = add nsw i32 %abs1, %abs2 ret i32 %add } + +; CHECK-V7: cmp +; CHECK-V7-NEXT: it mi +; CHECK-V7-NEXT: rsbmi +; CHECK-V7-NEXT: cmp +; CHECK-V7-NEXT: it mi +; CHECK-V7-NEXT: rsbmi + +; CHECK-V8: cmp +; CHECK-V8-NEXT: bpl +; CHECK-V8: rsbs +; CHECK-V8: cmp +; CHECK-V8-NEXT: bpl +; CHECK-V8: rsbs + |