summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-07-14 14:06:25 +0000
committerDan Gohman <gohman@apple.com>2009-07-14 14:06:25 +0000
commit92b4c7f355137bbe198e39607a2bcf5a038bc3bc (patch)
tree8e4f8e930e93d4c539c3faaebdfdc11a3fbbeffa /llvm/lib
parent1ab40bef8dfe416cc82455eea39d01d496752d90 (diff)
downloadbcm5719-llvm-92b4c7f355137bbe198e39607a2bcf5a038bc3bc.tar.gz
bcm5719-llvm-92b4c7f355137bbe198e39607a2bcf5a038bc3bc.zip
Add a comment about why ScalarEvolution doesn't recognize non-loop PHIs
even when they're obvious. llvm-svn: 75632
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Analysis/ScalarEvolution.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Analysis/ScalarEvolution.cpp b/llvm/lib/Analysis/ScalarEvolution.cpp
index 0152a9ff061..457466f9de5 100644
--- a/llvm/lib/Analysis/ScalarEvolution.cpp
+++ b/llvm/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);
}
OpenPOWER on IntegriCloud