]> granicus.if.org Git - llvm/commitdiff
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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@372993 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/ConstantFolding.cpp

index 8cad7d90a6493d0d54d56f5e3c45c80cd530361d..f8ea8cfc3545d5a3bbc98bbdf549da3914d7e840 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: