diff options
author | Erik Verbruggen <erikjv@me.com> | 2014-03-11 10:21:30 +0000 |
---|---|---|
committer | Erik Verbruggen <erikjv@me.com> | 2014-03-11 10:21:30 +0000 |
commit | fb411c8b8ce42689d42b0d8e3a871d81f86a7298 (patch) | |
tree | 01470320049f930140b01cdf14c3a6c23b837bc3 /lib/Transforms/Scalar | |
parent | cf5240642bdf8c042ff03ff451970191ceed2289 (diff) | |
download | llvm-fb411c8b8ce42689d42b0d8e3a871d81f86a7298.tar.gz llvm-fb411c8b8ce42689d42b0d8e3a871d81f86a7298.tar.bz2 llvm-fb411c8b8ce42689d42b0d8e3a871d81f86a7298.tar.xz |
GVN: fix hashing of extractvalue.
My last commit did not add the indexes to the hashed value for
extractvalue. Adding that back in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203558 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Scalar')
-rw-r--r-- | lib/Transforms/Scalar/GVN.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Transforms/Scalar/GVN.cpp b/lib/Transforms/Scalar/GVN.cpp index f40d34f248..c4a9a5a61e 100644 --- a/lib/Transforms/Scalar/GVN.cpp +++ b/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; |