diff options
author | Hal Finkel <hfinkel@anl.gov> | 2013-03-18 23:58:28 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2013-03-18 23:58:28 +0000 |
commit | fc9aad64361fbd887848d190c4320e257a6219ba (patch) | |
tree | 7835f7b1618c3e68b1ab24e154eaf10ab23a0582 /llvm/lib/Target/PowerPC/PPCCTRLoops.cpp | |
parent | 0add40ed7de32f8b2dad0068656c29093c6c0ed5 (diff) | |
download | bcm5719-llvm-fc9aad64361fbd887848d190c4320e257a6219ba.tar.gz bcm5719-llvm-fc9aad64361fbd887848d190c4320e257a6219ba.zip |
Fix a sign-extension bug in PPCCTRLoops
Don't sign extend the immediate value from the OR instruction in
an LIS/OR pair.
llvm-svn: 177361
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCCTRLoops.cpp')
-rw-r--r-- | llvm/lib/Target/PowerPC/PPCCTRLoops.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp b/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp index ecece8c73dc..5b20f81a3e0 100644 --- a/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp +++ b/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp @@ -396,7 +396,7 @@ CountValue *PPCCTRLoops::getTripCount(MachineLoop *L, // Here we need to look for an immediate load (an li or lis/ori pair). if (DefInstr && (DefInstr->getOpcode() == PPC::ORI8 || DefInstr->getOpcode() == PPC::ORI)) { - int64_t start = (short) DefInstr->getOperand(2).getImm(); + int64_t start = DefInstr->getOperand(2).getImm(); MachineInstr *DefInstr2 = MRI->getVRegDef(DefInstr->getOperand(1).getReg()); if (DefInstr2 && (DefInstr2->getOpcode() == PPC::LIS8 || |