diff options
-rw-r--r-- | llvm/lib/IR/ConstantFold.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/IR/ConstantFold.cpp b/llvm/lib/IR/ConstantFold.cpp index 835fbb3443b..ee0ad322f4e 100644 --- a/llvm/lib/IR/ConstantFold.cpp +++ b/llvm/lib/IR/ConstantFold.cpp @@ -747,6 +747,7 @@ Constant *llvm::ConstantFoldSelectInstruction(Constant *Cond, Constant *V2Element = ConstantExpr::getExtractElement(V2, ConstantInt::get(Ty, i)); Constant *Cond = dyn_cast<Constant>(CondV->getOperand(i)); + if (!Cond) break; if (V1Element == V2Element) { V = V1Element; } else if (isa<UndefValue>(Cond)) { |