]> granicus.if.org Git - llvm/commitdiff
[AArch64][Falkor] Fix MOVZ sched predicate to not assert on non-imm operands (e.g...
authorGeoff Berry <gberry@codeaurora.org>
Mon, 19 Jun 2017 21:57:44 +0000 (21:57 +0000)
committerGeoff Berry <gberry@codeaurora.org>
Mon, 19 Jun 2017 21:57:44 +0000 (21:57 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@305752 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/AArch64/AArch64SchedFalkorDetails.td

index 5e5e089f963c9e8b6bc056166489574eec931ed2..6081fbdcb0b01098f1e4bc2d490cc03786180a5a 100644 (file)
@@ -519,7 +519,8 @@ def FalkorReadIncSt  : SchedReadAdvance<1, [FalkorWr_LdStInc_none_3cyc]>;
 
 // SchedPredicates and WriteVariants for Immediate Zero and LSLFast/ASRFast
 // -----------------------------------------------------------------------------
-def FalkorImmZPred    : SchedPredicate<[{MI->getOperand(1).getImm() == 0}]>;
+def FalkorImmZPred    : SchedPredicate<[{MI->getOperand(1).isImm() &&
+                                         MI->getOperand(1).getImm() == 0}]>;
 def FalkorOp1ZrReg    : SchedPredicate<[{MI->getOperand(1).getReg() == AArch64::WZR ||
 
                                          MI->getOperand(1).getReg() == AArch64::XZR}]>;