aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Target/PowerPC/PPC64ISelPattern.cpp3
-rw-r--r--lib/Target/PowerPC/PPCISelPattern.cpp3
2 files changed, 6 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/PPC64ISelPattern.cpp b/lib/Target/PowerPC/PPC64ISelPattern.cpp
index 54f540fcf1..a654adced9 100644
--- a/lib/Target/PowerPC/PPC64ISelPattern.cpp
+++ b/lib/Target/PowerPC/PPC64ISelPattern.cpp
@@ -41,6 +41,9 @@ namespace {
int ReturnAddrIndex; // FrameIndex for return slot.
public:
PPC64TargetLowering(TargetMachine &TM) : TargetLowering(TM) {
+ // Fold away setcc operations if possible.
+ setSetCCIsExpensive();
+
// Set up the register classes.
addRegisterClass(MVT::i64, PPC64::GPRCRegisterClass);
addRegisterClass(MVT::f32, PPC64::FPRCRegisterClass);
diff --git a/lib/Target/PowerPC/PPCISelPattern.cpp b/lib/Target/PowerPC/PPCISelPattern.cpp
index 536a07710d..3281313617 100644
--- a/lib/Target/PowerPC/PPCISelPattern.cpp
+++ b/lib/Target/PowerPC/PPCISelPattern.cpp
@@ -43,6 +43,9 @@ namespace {
int ReturnAddrIndex; // FrameIndex for return slot.
public:
PPC32TargetLowering(TargetMachine &TM) : TargetLowering(TM) {
+ // Fold away setcc operations if possible.
+ setSetCCIsExpensive();
+
// Set up the register classes.
addRegisterClass(MVT::i32, PPC32::GPRCRegisterClass);
addRegisterClass(MVT::f32, PPC32::FPRCRegisterClass);