diff options
author | Eduard Burtescu <edy.burt@gmail.com> | 2016-01-22 03:08:27 +0000 |
---|---|---|
committer | Eduard Burtescu <edy.burt@gmail.com> | 2016-01-22 03:08:27 +0000 |
commit | 68e7f49f8e2c9e775e8fcbda3bdf4daeed11708b (patch) | |
tree | f25cfd38637e77ebeeafcbd382557218f7682168 /llvm/lib/Analysis/ConstantFolding.cpp | |
parent | e2a69178493c02eaabab69a418b39746e17b5978 (diff) | |
download | llvm-68e7f49f8e2c9e775e8fcbda3bdf4daeed11708b.zip llvm-68e7f49f8e2c9e775e8fcbda3bdf4daeed11708b.tar.gz llvm-68e7f49f8e2c9e775e8fcbda3bdf4daeed11708b.tar.bz2 |
[opaque pointer types] [NFC] DataLayout::getIndexedOffset: take source element type instead of pointer type and rename to getIndexedOffsetInType.
Summary:
Reviewers: mjacob, dblaikie
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16282
llvm-svn: 258478
Diffstat (limited to 'llvm/lib/Analysis/ConstantFolding.cpp')
-rw-r--r-- | llvm/lib/Analysis/ConstantFolding.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/llvm/lib/Analysis/ConstantFolding.cpp b/llvm/lib/Analysis/ConstantFolding.cpp index 54dd0d5..a23fb75 100644 --- a/llvm/lib/Analysis/ConstantFolding.cpp +++ b/llvm/lib/Analysis/ConstantFolding.cpp @@ -772,8 +772,8 @@ static Constant *SymbolicallyEvaluateGEP(const GEPOperator *GEP, unsigned BitWidth = DL.getTypeSizeInBits(IntPtrTy); APInt Offset = APInt(BitWidth, - DL.getIndexedOffset( - Ptr->getType(), + DL.getIndexedOffsetInType( + SrcElemTy, makeArrayRef((Value * const *)Ops.data() + 1, Ops.size() - 1))); Ptr = StripPtrCastKeepAS(Ptr, SrcElemTy); @@ -792,7 +792,8 @@ static Constant *SymbolicallyEvaluateGEP(const GEPOperator *GEP, break; Ptr = cast<Constant>(GEP->getOperand(0)); - Offset += APInt(BitWidth, DL.getIndexedOffset(Ptr->getType(), NestedOps)); + SrcElemTy = GEP->getSourceElementType(); + Offset += APInt(BitWidth, DL.getIndexedOffsetInType(SrcElemTy, NestedOps)); Ptr = StripPtrCastKeepAS(Ptr, SrcElemTy); } |