diff options
author | Duncan Sands <baldrick@free.fr> | 2012-02-08 14:10:53 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2012-02-08 14:10:53 +0000 |
commit | 8c160548ce58c87242335b041f80e1b97f974823 (patch) | |
tree | 9f5c57e0d89a814b94944e247fbe276fae038a9a | |
parent | 80fd2a1972fa1955cdea1bf2a37b47659331870c (diff) | |
download | external_llvm-8c160548ce58c87242335b041f80e1b97f974823.zip external_llvm-8c160548ce58c87242335b041f80e1b97f974823.tar.gz external_llvm-8c160548ce58c87242335b041f80e1b97f974823.tar.bz2 |
Use Use::set rather than finding the operand number of the use
and setting that.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150074 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Transforms/Scalar/GVN.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/lib/Transforms/Scalar/GVN.cpp b/lib/Transforms/Scalar/GVN.cpp index 6541253..5b95f5b 100644 --- a/lib/Transforms/Scalar/GVN.cpp +++ b/lib/Transforms/Scalar/GVN.cpp @@ -1900,12 +1900,9 @@ unsigned GVN::replaceAllDominatedUsesWith(Value *From, Value *To, unsigned Count = 0; for (Value::use_iterator UI = From->use_begin(), UE = From->use_end(); UI != UE; ) { - Instruction *User = cast<Instruction>(*UI); - unsigned OpNum = UI.getOperandNo(); - ++UI; - - if (DT->dominates(Root, User->getParent())) { - User->setOperand(OpNum, To); + Use &U = (UI++).getUse(); + if (DT->dominates(Root, cast<Instruction>(U.getUser())->getParent())) { + U.set(To); ++Count; } } |