diff options
author | Chris Lattner <sabre@nondot.org> | 2007-01-12 18:20:48 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2007-01-12 18:20:48 +0000 |
commit | 0bb38313ae78a621a0596dc1089522ad5255e399 (patch) | |
tree | cb2a02b031d4717986178d1b4f2b617452265473 | |
parent | a875df3aaac9548dc78466bb2a9d6e85feddade7 (diff) | |
download | external_llvm-0bb38313ae78a621a0596dc1089522ad5255e399.zip external_llvm-0bb38313ae78a621a0596dc1089522ad5255e399.tar.gz external_llvm-0bb38313ae78a621a0596dc1089522ad5255e399.tar.bz2 |
GEP operands can't be bools
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33125 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Analysis/BasicAliasAnalysis.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/lib/Analysis/BasicAliasAnalysis.cpp b/lib/Analysis/BasicAliasAnalysis.cpp index d49898a..3f6b722 100644 --- a/lib/Analysis/BasicAliasAnalysis.cpp +++ b/lib/Analysis/BasicAliasAnalysis.cpp @@ -434,8 +434,7 @@ BasicAliasAnalysis::alias(const Value *V1, unsigned V1Size, if (cast<PointerType>( BasePtr->getType())->getElementType()->isSized()) { for (unsigned i = 0; i != GEPOperands.size(); ++i) - if (!isa<ConstantInt>(GEPOperands[i]) || - GEPOperands[i]->getType() == Type::Int1Ty) + if (!isa<ConstantInt>(GEPOperands[i])) GEPOperands[i] = Constant::getNullValue(GEPOperands[i]->getType()); int64_t Offset = @@ -610,14 +609,12 @@ BasicAliasAnalysis::CheckGEPInstructions( if (GEP1Ops.size() > MinOperands) { for (unsigned i = FirstConstantOper; i != MaxOperands; ++i) if (isa<ConstantInt>(GEP1Ops[i]) && - GEP1Ops[i]->getType() != Type::Int1Ty && !cast<Constant>(GEP1Ops[i])->isNullValue()) { // Yup, there's a constant in the tail. Set all variables to // constants in the GEP instruction to make it suiteable for // TargetData::getIndexedOffset. for (i = 0; i != MaxOperands; ++i) - if (!isa<ConstantInt>(GEP1Ops[i]) || - GEP1Ops[i]->getType() == Type::Int1Ty) + if (!isa<ConstantInt>(GEP1Ops[i])) GEP1Ops[i] = Constant::getNullValue(GEP1Ops[i]->getType()); // Okay, now get the offset. This is the relative offset for the full // instruction. @@ -670,7 +667,7 @@ BasicAliasAnalysis::CheckGEPInstructions( const Value *Op2 = i < GEP2Ops.size() ? GEP2Ops[i] : 0; // If they are equal, use a zero index... if (Op1 == Op2 && BasePtr1Ty == BasePtr2Ty) { - if (!isa<ConstantInt>(Op1) || Op1->getType() == Type::Int1Ty) + if (!isa<ConstantInt>(Op1)) GEP1Ops[i] = GEP2Ops[i] = Constant::getNullValue(Op1->getType()); // Otherwise, just keep the constants we have. } else { |