summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-07-18 07:29:35 +0000
committerChris Lattner <sabre@nondot.org>2004-07-18 07:29:35 +0000
commitaba6c4790058b61de13ee86c2aa21d963e3d4666 (patch)
tree5c9d8527fd4c5cbc8167e515b92717f0cb6bf7bc
parent9ce34cb3233123f9c9338bf00f7d33b20b9c531a (diff)
downloadbcm5719-llvm-aba6c4790058b61de13ee86c2aa21d963e3d4666.tar.gz
bcm5719-llvm-aba6c4790058b61de13ee86c2aa21d963e3d4666.zip
CPR Fixes
llvm-svn: 14961
-rw-r--r--llvm/lib/Target/PowerPC/PPC32AsmPrinter.cpp4
-rw-r--r--llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp6
-rw-r--r--llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp4
-rw-r--r--llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp6
4 files changed, 8 insertions, 12 deletions
diff --git a/llvm/lib/Target/PowerPC/PPC32AsmPrinter.cpp b/llvm/lib/Target/PowerPC/PPC32AsmPrinter.cpp
index e8b3ca2161a..184922157df 100644
--- a/llvm/lib/Target/PowerPC/PPC32AsmPrinter.cpp
+++ b/llvm/lib/Target/PowerPC/PPC32AsmPrinter.cpp
@@ -161,10 +161,10 @@ void Printer::emitConstantValueOnly(const Constant *CV) {
O << CI->getValue();
else if (const ConstantUInt *CI = dyn_cast<ConstantUInt>(CV))
O << CI->getValue();
- else if (const ConstantPointerRef *CPR = dyn_cast<ConstantPointerRef>(CV))
+ else if (const GlobalValue *GV = dyn_cast<GlobalValue>(CV))
// This is a constant address for a global variable or function. Use the
// name of the variable or function as the address value.
- O << Mang->getValueName(CPR->getValue());
+ O << Mang->getValueName(GV);
else if (const ConstantExpr *CE = dyn_cast<ConstantExpr>(CV)) {
const TargetData &TD = TM.getTargetData();
switch(CE->getOpcode()) {
diff --git a/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp b/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
index 3b53905237d..340cbe95ef0 100644
--- a/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
+++ b/llvm/lib/Target/PowerPC/PPC32ISelSimple.cpp
@@ -520,8 +520,8 @@ void ISel::copyConstantToRegister(MachineBasicBlock *MBB,
} else if (isa<ConstantPointerNull>(C)) {
// Copy zero (null pointer) to the register.
BuildMI(*MBB, IP, PPC32::LI, 1, R).addImm(0);
- } else if (ConstantPointerRef *CPR = dyn_cast<ConstantPointerRef>(C)) {
- unsigned AddrReg = getReg(CPR->getValue(), MBB, IP);
+ } else if (GlobalValue *GV = dyn_cast<GlobalValue>(C)) {
+ unsigned AddrReg = getReg(GV, MBB, IP);
BuildMI(*MBB, IP, PPC32::OR, 2, R).addReg(AddrReg).addReg(AddrReg);
} else {
std::cerr << "Offending constant: " << *C << "\n";
@@ -2771,8 +2771,6 @@ void ISel::emitGEPOperation(MachineBasicBlock *MBB,
Value *Src, User::op_iterator IdxBegin,
User::op_iterator IdxEnd, unsigned TargetReg) {
const TargetData &TD = TM.getTargetData();
- if (ConstantPointerRef *CPR = dyn_cast<ConstantPointerRef>(Src))
- Src = CPR->getValue();
std::vector<Value*> GEPOps;
GEPOps.resize(IdxEnd-IdxBegin+1);
diff --git a/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp b/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp
index e8b3ca2161a..184922157df 100644
--- a/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp
+++ b/llvm/lib/Target/PowerPC/PowerPCAsmPrinter.cpp
@@ -161,10 +161,10 @@ void Printer::emitConstantValueOnly(const Constant *CV) {
O << CI->getValue();
else if (const ConstantUInt *CI = dyn_cast<ConstantUInt>(CV))
O << CI->getValue();
- else if (const ConstantPointerRef *CPR = dyn_cast<ConstantPointerRef>(CV))
+ else if (const GlobalValue *GV = dyn_cast<GlobalValue>(CV))
// This is a constant address for a global variable or function. Use the
// name of the variable or function as the address value.
- O << Mang->getValueName(CPR->getValue());
+ O << Mang->getValueName(GV);
else if (const ConstantExpr *CE = dyn_cast<ConstantExpr>(CV)) {
const TargetData &TD = TM.getTargetData();
switch(CE->getOpcode()) {
diff --git a/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp b/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp
index 3b53905237d..340cbe95ef0 100644
--- a/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp
+++ b/llvm/lib/Target/PowerPC/PowerPCISelSimple.cpp
@@ -520,8 +520,8 @@ void ISel::copyConstantToRegister(MachineBasicBlock *MBB,
} else if (isa<ConstantPointerNull>(C)) {
// Copy zero (null pointer) to the register.
BuildMI(*MBB, IP, PPC32::LI, 1, R).addImm(0);
- } else if (ConstantPointerRef *CPR = dyn_cast<ConstantPointerRef>(C)) {
- unsigned AddrReg = getReg(CPR->getValue(), MBB, IP);
+ } else if (GlobalValue *GV = dyn_cast<GlobalValue>(C)) {
+ unsigned AddrReg = getReg(GV, MBB, IP);
BuildMI(*MBB, IP, PPC32::OR, 2, R).addReg(AddrReg).addReg(AddrReg);
} else {
std::cerr << "Offending constant: " << *C << "\n";
@@ -2771,8 +2771,6 @@ void ISel::emitGEPOperation(MachineBasicBlock *MBB,
Value *Src, User::op_iterator IdxBegin,
User::op_iterator IdxEnd, unsigned TargetReg) {
const TargetData &TD = TM.getTargetData();
- if (ConstantPointerRef *CPR = dyn_cast<ConstantPointerRef>(Src))
- Src = CPR->getValue();
std::vector<Value*> GEPOps;
GEPOps.resize(IdxEnd-IdxBegin+1);
OpenPOWER on IntegriCloud