Index: lib/Target/PowerPC/PPCInstrInfo.cpp =================================================================== --- lib/Target/PowerPC/PPCInstrInfo.cpp +++ lib/Target/PowerPC/PPCInstrInfo.cpp @@ -695,6 +695,12 @@ if (Cond[1].getReg() == PPC::CTR || Cond[1].getReg() == PPC::CTR8) return false; + const MachineFunction *MF = MBB.getParent(); + auto SelectPred = static_cast(Cond[0].getImm()); + if (isHintedPredicate(SelectPred) && + MF->getSubtarget().hasSlowISEL()) + return false; + // Check register classes. const MachineRegisterInfo &MRI = MBB.getParent()->getRegInfo(); const TargetRegisterClass *RC =