Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.70 -> 1.71 --- Log message: getRawValue zero extens for unsigned values, use getsextvalue so that we know that small negative values fit into the immediate field of addressing modes. --- Diffs of the changes: (+3 -3) LoopStrengthReduce.cpp | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) Index: llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp diff -u llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp:1.70 llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp:1.71 --- llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp:1.70 Fri Oct 21 00:45:41 2005 +++ llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp Mon Dec 5 12:23:57 2005 @@ -560,9 +560,9 @@ // FIXME: Look at the target to decide if &GV is a legal constant immediate. if (SCEVConstant *SC = dyn_cast<SCEVConstant>(V)) { // PPC allows a sign-extended 16-bit immediate field. - if ((int64_t)SC->getValue()->getRawValue() > -(1 << 16) && - (int64_t)SC->getValue()->getRawValue() < (1 << 16)-1) - return true; + int64_t V = SC->getValue()->getSExtValue(); + if (V > -(1 << 16) && V < (1 << 16)-1) + return true; return false; } _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits