summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-05-01 16:29:14 +0000
committerDan Gohman <gohman@apple.com>2009-05-01 16:29:14 +0000
commit6be853015815e23dbc81474407e7712f3921f913 (patch)
treeea0a82c750ff00e5ed6593088e1e336f1e78e5f8 /llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
parentafbff15e640e94099ba2a13f92a14498c829d16d (diff)
downloadbcm5719-llvm-6be853015815e23dbc81474407e7712f3921f913.tar.gz
bcm5719-llvm-6be853015815e23dbc81474407e7712f3921f913.zip
Fix some code to work if TargetLowering is not available.
llvm-svn: 70546
Diffstat (limited to 'llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp')
-rw-r--r--llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
index 2dc62823ec4..89429b6731d 100644
--- a/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
@@ -794,10 +794,14 @@ static bool fitsInAddressMode(const SCEVHandle &V, const Type *UseTy,
if (const SCEVUnknown *SU = dyn_cast<SCEVUnknown>(V))
if (GlobalValue *GV = dyn_cast<GlobalValue>(SU->getValue())) {
- TargetLowering::AddrMode AM;
- AM.BaseGV = GV;
- AM.HasBaseReg = HasBaseReg;
- return TLI->isLegalAddressingMode(AM, UseTy);
+ if (TLI) {
+ TargetLowering::AddrMode AM;
+ AM.BaseGV = GV;
+ AM.HasBaseReg = HasBaseReg;
+ return TLI->isLegalAddressingMode(AM, UseTy);
+ } else {
+ // Default: assume global addresses are not legal.
+ }
}
return false;
OpenPOWER on IntegriCloud