ConstantFold - silence static analyzer dyn_cast<ExtractValueInst> null dereference...
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 26 Sep 2019 16:30:36 +0000 (16:30 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 26 Sep 2019 16:30:36 +0000 (16:30 +0000)
The static analyzer is warning about a potential null dereference, but we should be able to use cast<ExtractValueInst> directly and if not assert will fire for us.

llvm-svn: 372993

llvm/lib/Analysis/ConstantFolding.cpp

index 8cad7d9..f8ea8cf 100644 (file)
@@ -1056,7 +1056,7 @@ Constant *ConstantFoldInstOperandsImpl(const Value *InstOrCE, unsigned Opcode,
     return ConstantExpr::getExtractElement(Ops[0], Ops[1]);
   case Instruction::ExtractValue:
     return ConstantExpr::getExtractValue(
-        Ops[0], dyn_cast<ExtractValueInst>(InstOrCE)->getIndices());
+        Ops[0], cast<ExtractValueInst>(InstOrCE)->getIndices());
   case Instruction::InsertElement:
     return ConstantExpr::getInsertElement(Ops[0], Ops[1], Ops[2]);
   case Instruction::ShuffleVector: