diff options
author | Dan Gohman <gohman@apple.com> | 2009-07-14 14:06:25 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2009-07-14 14:06:25 +0000 |
commit | a653fc5f6bdfa016ba703c9b6d520b697c987517 (patch) | |
tree | 6b8fcb839e8a07e2e3c71cd36f258f1dbd922257 /lib/Analysis/ScalarEvolution.cpp | |
parent | 93990d775ea4ac13c9c2614e84fc19a7a2161771 (diff) |
Add a comment about why ScalarEvolution doesn't recognize non-loop PHIs
even when they're obvious.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75632 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/ScalarEvolution.cpp')
-rw-r--r-- | lib/Analysis/ScalarEvolution.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Analysis/ScalarEvolution.cpp b/lib/Analysis/ScalarEvolution.cpp index 0152a9ff06..457466f9de 100644 --- a/lib/Analysis/ScalarEvolution.cpp +++ b/lib/Analysis/ScalarEvolution.cpp @@ -2402,6 +2402,10 @@ const SCEV *ScalarEvolution::createNodeForPHI(PHINode *PN) { return SymbolicName; } + // It's tempting to recognize PHIs with a unique incoming value, however + // this leads passes like indvars to break LCSSA form. Fortunately, such + // PHIs are rare, as instcombine zaps them. + // If it's not a loop phi, we can't handle it yet. return getUnknown(PN); } |