summaryrefslogtreecommitdiff
path: root/lib/Analysis/ScalarEvolutionExpander.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2012-02-22 03:44:46 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2012-02-22 03:44:46 +0000
commitb84d540bc9d70de00b791d0e0deab410d6ba3ad5 (patch)
tree35c7a1563d1daaa31e48a922614a868ef8a3739c /lib/Analysis/ScalarEvolutionExpander.cpp
parent919a503458c18472984c7c37b305110c9ba3a782 (diff)
downloadllvm-b84d540bc9d70de00b791d0e0deab410d6ba3ad5.tar.gz
llvm-b84d540bc9d70de00b791d0e0deab410d6ba3ad5.tar.bz2
llvm-b84d540bc9d70de00b791d0e0deab410d6ba3ad5.tar.xz
Improve comment. Thanks for Andrew for the suggestion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151127 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/ScalarEvolutionExpander.cpp')
-rw-r--r--lib/Analysis/ScalarEvolutionExpander.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/Analysis/ScalarEvolutionExpander.cpp b/lib/Analysis/ScalarEvolutionExpander.cpp
index a9473b4c49..d5f3b74516 100644
--- a/lib/Analysis/ScalarEvolutionExpander.cpp
+++ b/lib/Analysis/ScalarEvolutionExpander.cpp
@@ -53,8 +53,9 @@ Value *SCEVExpander::ReuseOrCreateCast(Value *V, Type *Ty,
if (U->getType() == Ty)
if (CastInst *CI = dyn_cast<CastInst>(U))
if (CI->getOpcode() == Op) {
- // If the cast isn't where we want it or if it doesn't dominate
- // a use in BIP, fix it.
+ // If the cast isn't where we want it, create a new cast at IP.
+ // Likewise, do not reuse a cast at BIP because it must dominate
+ // instructions that might be inserted before BIP.
if (BasicBlock::iterator(CI) != IP || BIP == IP) {
// Create a new cast, and leave the old cast in place in case
// it is being used as an insert point. Clear its operand