summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2003-07-26 23:29:51 +0000
committerChris Lattner <sabre@nondot.org>2003-07-26 23:29:51 +0000
commit0c8de4bfca84f15599783b400cbc9b580cd915ae (patch)
tree53cee28d31bf8b6f05513bcc37f38fab8b9c75dd /llvm/lib/CodeGen
parent414832fea6de1c13f27ac9b6a38f693495791c26 (diff)
downloadbcm5719-llvm-0c8de4bfca84f15599783b400cbc9b580cd915ae.tar.gz
bcm5719-llvm-0c8de4bfca84f15599783b400cbc9b580cd915ae.zip
Making this code const-correct would be a pain, so I'll hack it.
llvm-svn: 7350
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r--llvm/lib/CodeGen/InstrSelection/InstrSelection.cpp9
-rw-r--r--llvm/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp2
2 files changed, 6 insertions, 5 deletions
diff --git a/llvm/lib/CodeGen/InstrSelection/InstrSelection.cpp b/llvm/lib/CodeGen/InstrSelection/InstrSelection.cpp
index e4dd2e9dace..a666c5fe2e1 100644
--- a/llvm/lib/CodeGen/InstrSelection/InstrSelection.cpp
+++ b/llvm/lib/CodeGen/InstrSelection/InstrSelection.cpp
@@ -189,8 +189,8 @@ InstructionSelection::InsertCodeForPhis(Function &F)
//
MachineFunction &MF = MachineFunction::get(&F);
for (MachineFunction::iterator BB = MF.begin(); BB != MF.end(); ++BB) {
- for (BasicBlock::iterator IIt = BB->getBasicBlock()->begin();
- PHINode *PN = dyn_cast<PHINode>(IIt); ++IIt) {
+ for (BasicBlock::const_iterator IIt = BB->getBasicBlock()->begin();
+ const PHINode *PN = dyn_cast<PHINode>(IIt); ++IIt) {
// FIXME: This is probably wrong...
Value *PhiCpRes = new PHINode(PN->getType(), "PhiCp:");
@@ -209,7 +209,7 @@ InstructionSelection::InsertCodeForPhis(Function &F)
for (vector<MachineInstr*>::iterator MI=mvec.begin();
MI != mvec.end(); ++MI) {
vector<MachineInstr*> CpVec2 =
- FixConstantOperandsForInstr(PN, *MI, Target);
+ FixConstantOperandsForInstr(const_cast<PHINode*>(PN), *MI, Target);
CpVec2.push_back(*MI);
CpVec.insert(CpVec.end(), CpVec2.begin(), CpVec2.end());
}
@@ -218,7 +218,8 @@ InstructionSelection::InsertCodeForPhis(Function &F)
}
vector<MachineInstr*> mvec;
- Target.getRegInfo().cpValue2Value(PhiCpRes, PN, mvec);
+ Target.getRegInfo().cpValue2Value(PhiCpRes, const_cast<PHINode*>(PN),
+ mvec);
BB->insert(BB->begin(), mvec.begin(), mvec.end());
} // for each Phi Instr in BB
} // for all BBs in function
diff --git a/llvm/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp b/llvm/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp
index f08e21fb933..4d68b15dea8 100644
--- a/llvm/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp
+++ b/llvm/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp
@@ -569,7 +569,7 @@ void PhyRegAlloc::updateMachineCode()
//
for (MachineBasicBlock::iterator MII = MBB.begin(); MII != MBB.end(); ++MII)
if (!TM.getInstrInfo().isDummyPhiInstr((*MII)->getOpCode()))// ignore Phis
- updateInstruction(*MII, MBB.getBasicBlock());
+ updateInstruction(*MII, const_cast<BasicBlock*>(MBB.getBasicBlock()));
// Now, move code out of delay slots of branches and returns if needed.
// (Also, move "after" code from calls to the last delay slot instruction.)
OpenPOWER on IntegriCloud