diff options
| author | Johannes Doerfert <doerfert@cs.uni-saarland.de> | 2015-09-09 14:19:04 +0000 |
|---|---|---|
| committer | Johannes Doerfert <doerfert@cs.uni-saarland.de> | 2015-09-09 14:19:04 +0000 |
| commit | 7ca8dc2d2df159c7f292b2e50fee7d2957986558 (patch) | |
| tree | fa0be64997e5d6633c876e9fdf79b9ac62cf3aad /polly/lib/Analysis/ScopDetection.cpp | |
| parent | 6b28f09d679ef18cbd447957d1ac21068a3f4e8e (diff) | |
| download | bcm5719-llvm-7ca8dc2d2df159c7f292b2e50fee7d2957986558.tar.gz bcm5719-llvm-7ca8dc2d2df159c7f292b2e50fee7d2957986558.zip | |
Disable support for pointer expressions
The support for pointer expressions is broken as it can only handle
some patterns in the IslExprBuilder. We should to treat pointers in
expressions the same as integers at some point and revert this patch.
llvm-svn: 247147
Diffstat (limited to 'polly/lib/Analysis/ScopDetection.cpp')
| -rw-r--r-- | polly/lib/Analysis/ScopDetection.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/polly/lib/Analysis/ScopDetection.cpp b/polly/lib/Analysis/ScopDetection.cpp index 06f1bfc68af..34e19648a0b 100644 --- a/polly/lib/Analysis/ScopDetection.cpp +++ b/polly/lib/Analysis/ScopDetection.cpp @@ -344,6 +344,12 @@ bool ScopDetection::isValidCFG(BasicBlock &BB, isa<UndefValue>(ICmp->getOperand(1))) return invalid<ReportUndefOperand>(Context, /*Assert=*/true, &BB, ICmp); + // TODO: FIXME: IslExprBuilder is not capable of producing valid code + // for arbitrary pointer expressions at the moment. Until + // this is fixed we disallow pointer expressions completely. + if (ICmp->getOperand(0)->getType()->isPointerTy()) + return false; + Loop *L = LI->getLoopFor(ICmp->getParent()); const SCEV *LHS = SE->getSCEVAtScope(ICmp->getOperand(0), L); const SCEV *RHS = SE->getSCEVAtScope(ICmp->getOperand(1), L); |

