diff options
| author | Jay Foad <jay.foad@gmail.com> | 2010-12-07 08:25:19 +0000 |
|---|---|---|
| committer | Jay Foad <jay.foad@gmail.com> | 2010-12-07 08:25:19 +0000 |
| commit | 583abbc4df3d9b9e5a86a56ae581970b98dc5249 (patch) | |
| tree | 62e559937dd04e2a764f7423e50f94a5641022f9 /llvm/lib/Analysis/BasicAliasAnalysis.cpp | |
| parent | 10e1b56e2c9b920d5f3509abb8a6df3815200839 (diff) | |
| download | llvm-583abbc4df3d9b9e5a86a56ae581970b98dc5249.zip llvm-583abbc4df3d9b9e5a86a56ae581970b98dc5249.tar.gz llvm-583abbc4df3d9b9e5a86a56ae581970b98dc5249.tar.bz2 | |
PR5207: Change APInt methods trunc(), sext(), zext(), sextOrTrunc() and
zextOrTrunc(), and APSInt methods extend(), extOrTrunc() and new method
trunc(), to be const and to return a new value instead of modifying the
object in place.
llvm-svn: 121120
Diffstat (limited to 'llvm/lib/Analysis/BasicAliasAnalysis.cpp')
| -rw-r--r-- | llvm/lib/Analysis/BasicAliasAnalysis.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/Analysis/BasicAliasAnalysis.cpp b/llvm/lib/Analysis/BasicAliasAnalysis.cpp index 74bee94..3ab18fd 100644 --- a/llvm/lib/Analysis/BasicAliasAnalysis.cpp +++ b/llvm/lib/Analysis/BasicAliasAnalysis.cpp @@ -206,14 +206,14 @@ static Value *GetLinearExpression(Value *V, APInt &Scale, APInt &Offset, Value *CastOp = cast<CastInst>(V)->getOperand(0); unsigned OldWidth = Scale.getBitWidth(); unsigned SmallWidth = CastOp->getType()->getPrimitiveSizeInBits(); - Scale.trunc(SmallWidth); - Offset.trunc(SmallWidth); + Scale = Scale.trunc(SmallWidth); + Offset = Offset.trunc(SmallWidth); Extension = isa<SExtInst>(V) ? EK_SignExt : EK_ZeroExt; Value *Result = GetLinearExpression(CastOp, Scale, Offset, Extension, TD, Depth+1); - Scale.zext(OldWidth); - Offset.zext(OldWidth); + Scale = Scale.zext(OldWidth); + Offset = Offset.zext(OldWidth); return Result; } |
