summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/PowerPC/knowCRBitSpill.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/PowerPC/knowCRBitSpill.ll')
-rw-r--r--llvm/test/CodeGen/PowerPC/knowCRBitSpill.ll14
1 files changed, 10 insertions, 4 deletions
diff --git a/llvm/test/CodeGen/PowerPC/knowCRBitSpill.ll b/llvm/test/CodeGen/PowerPC/knowCRBitSpill.ll
index be05c57b83f..f49a70325b5 100644
--- a/llvm/test/CodeGen/PowerPC/knowCRBitSpill.ll
+++ b/llvm/test/CodeGen/PowerPC/knowCRBitSpill.ll
@@ -1,6 +1,6 @@
; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \
; RUN: -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr < %s | FileCheck %s
-; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu \
+; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr8 \
; RUN: -ppc-asm-full-reg-names -ppc-vsr-nums-as-vr < %s | FileCheck %s
@@ -16,13 +16,19 @@
; Function Attrs: nounwind
define dso_local signext i32 @spillCRSET(i32 signext %p1, i32 signext %p2) {
; CHECK-LABEL: spillCRSET:
-; CHECK: # %bb.0: # %entry
-; CHECK: lis [[REG1:.*]], -32768
+; CHECK: # %bb.2:
+; CHECK-DAG: crnor [[CREG:.*]]*cr5+lt, eq, eq
+; CHECK-DAG: mfocrf [[REG2:.*]], [[CREG]]
+; CHECK-DAG: rlwinm [[REG2]], [[REG2]]
+; CHECK: .LBB0_3:
; CHECK-DAG: creqv [[CREG:.*]]*cr5+lt, [[CREG]]*cr5+lt, [[CREG]]*cr5+lt
+; CHECK: lis [[REG1:.*]], -32768
+; CHECK: .LBB0_4:
; CHECK-NOT: mfocrf [[REG2:.*]], [[CREG]]
; CHECK-NOT: rlwinm [[REG2]], [[REG2]]
; CHECK: stw [[REG1]]
-; CHECK: .LBB0_1: # %redo_first_pass
+; CHECK: # %bb.5:
+
entry:
%tobool = icmp eq i32 %p2, 0
%tobool2 = icmp eq i32 %p1, 0
OpenPOWER on IntegriCloud