summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2005-12-11 07:37:41 +0000
committerChris Lattner <sabre@nondot.org>2005-12-11 07:37:41 +0000
commit3d9559fedcbcaec760afe1b96a43717eb21d7168 (patch)
treec5692bb3644301ca71ee85511d788593f2a27af9 /llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp
parent20d0b81c0429721ba322abf88be79a6f9b4c75ed (diff)
downloadbcm5719-llvm-3d9559fedcbcaec760afe1b96a43717eb21d7168.tar.gz
bcm5719-llvm-3d9559fedcbcaec760afe1b96a43717eb21d7168.zip
Fix the JIT failures from last night.
llvm-svn: 24659
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp')
-rw-r--r--llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp b/llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp
index d576b79eb71..95f84ebe742 100644
--- a/llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp
+++ b/llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp
@@ -242,11 +242,12 @@ int PPCCodeEmitter::getMachineOpValue(MachineInstr &MI, MachineOperand &MO) {
unsigned index = MO.getConstantPoolIndex();
unsigned Opcode = MI.getOpcode();
rv = MCE.getConstantPoolEntryAddress(index);
- if (Opcode == PPC::LIS) {
+ if (Opcode == PPC::LIS || Opcode == PPC::ADDIS) {
// lis wants hi16(addr)
if ((short)rv < 0) rv += 1 << 16;
rv >>= 16;
} else if (Opcode == PPC::LWZ || Opcode == PPC::LA ||
+ Opcode == PPC::LI ||
Opcode == PPC::LFS || Opcode == PPC::LFD) {
// These load opcodes want lo16(addr)
rv &= 0xffff;
OpenPOWER on IntegriCloud