summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/lib/Transforms/Scalar/GVN.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/GVN.cpp b/llvm/lib/Transforms/Scalar/GVN.cpp
index f40d34f2488..c4a9a5a61ee 100644
--- a/llvm/lib/Transforms/Scalar/GVN.cpp
+++ b/llvm/lib/Transforms/Scalar/GVN.cpp
@@ -189,6 +189,10 @@ Expression ValueTable::create_expression(Instruction *I) {
for (InsertValueInst::idx_iterator II = E->idx_begin(), IE = E->idx_end();
II != IE; ++II)
e.varargs.push_back(*II);
+ } else if (ExtractValueInst *EVI = dyn_cast<ExtractValueInst>(I)) {
+ for (ExtractValueInst::idx_iterator II = EVI->idx_begin(),
+ IE = EVI->idx_end(); II != IE; ++II)
+ e.varargs.push_back(*II);
}
return e;
OpenPOWER on IntegriCloud