diff options
Diffstat (limited to 'llvm/lib/CodeGen/CodeGenPrepare.cpp')
-rw-r--r-- | llvm/lib/CodeGen/CodeGenPrepare.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/CodeGenPrepare.cpp b/llvm/lib/CodeGen/CodeGenPrepare.cpp index afd37a0efe7..ba68a4ec252 100644 --- a/llvm/lib/CodeGen/CodeGenPrepare.cpp +++ b/llvm/lib/CodeGen/CodeGenPrepare.cpp @@ -910,8 +910,8 @@ static bool SinkCmpExpression(CmpInst *CI, const TargetLowering &TLI) { return MadeChange; } -static bool OptimizeCmpExpression(CmpInst *CI, const TargetLowering &TLI) { - if (SinkCmpExpression(CI, TLI)) +static bool OptimizeCmpExpression(CmpInst *CI, const TargetLowering *TLI) { + if (TLI && SinkCmpExpression(CI, *TLI)) return true; if (CombineUAddWithOverflow(CI)) @@ -5177,7 +5177,7 @@ bool CodeGenPrepare::optimizeInst(Instruction *I, bool& ModifiedDT) { if (CmpInst *CI = dyn_cast<CmpInst>(I)) if (!TLI || !TLI->hasMultipleConditionRegisters()) - return OptimizeCmpExpression(CI, *TLI); + return OptimizeCmpExpression(CI, TLI); if (LoadInst *LI = dyn_cast<LoadInst>(I)) { stripInvariantGroupMetadata(*LI); |