mirror of
https://github.com/RPCS3/llvm.git
synced 2025-02-02 00:35:27 +00:00
This code doesn't modify the LLVM structure, keep stuff const
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7343 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1d598fa25a
commit
6856d11231
@ -571,7 +571,7 @@ int64_t SparcV9CodeEmitter::getMachineOpValue(MachineInstr &MI,
|
||||
// Duplicate code of the above case for VirtualRegister, BasicBlock...
|
||||
// It should really hit this case, but Sparc backend uses VRegs instead
|
||||
DEBUG(std::cerr << "Saving reference to MBB\n");
|
||||
BasicBlock *BB = MO.getMachineBasicBlock()->getBasicBlock();
|
||||
const BasicBlock *BB = MO.getMachineBasicBlock()->getBasicBlock();
|
||||
unsigned* CurrPC = (unsigned*)(intptr_t)MCE.getCurrentPCValue();
|
||||
BBRefs.push_back(std::make_pair(BB, std::make_pair(CurrPC, &MI)));
|
||||
} else if (MO.isExternalSymbol()) {
|
||||
|
@ -18,13 +18,13 @@ class MachineOperand;
|
||||
class SparcV9CodeEmitter : public MachineFunctionPass {
|
||||
TargetMachine &TM;
|
||||
MachineCodeEmitter &MCE;
|
||||
BasicBlock *currBB;
|
||||
const BasicBlock *currBB;
|
||||
|
||||
// Tracks which instruction references which BasicBlock
|
||||
std::vector<std::pair<BasicBlock*,
|
||||
std::vector<std::pair<const BasicBlock*,
|
||||
std::pair<unsigned*,MachineInstr*> > > BBRefs;
|
||||
// Tracks where each BasicBlock starts
|
||||
std::map<BasicBlock*, long> BBLocations;
|
||||
std::map<const BasicBlock*, long> BBLocations;
|
||||
|
||||
// Tracks locations of Constants which are laid out in memory (e.g. FP)
|
||||
// But we also need to map Constants to ConstantPool indices
|
||||
|
@ -133,8 +133,8 @@ void InsertPrologEpilogCode::InsertEpilogCode(MachineFunction &MF)
|
||||
|
||||
for (MachineFunction::iterator I = MF.begin(), E = MF.end(); I != E; ++I) {
|
||||
MachineBasicBlock &MBB = *I;
|
||||
BasicBlock &BB = *I->getBasicBlock();
|
||||
Instruction *TermInst = (Instruction*)BB.getTerminator();
|
||||
const BasicBlock &BB = *I->getBasicBlock();
|
||||
const Instruction *TermInst = (Instruction*)BB.getTerminator();
|
||||
if (TermInst->getOpcode() == Instruction::Ret)
|
||||
{
|
||||
int ZR = TM.getRegInfo().getZeroRegNum();
|
||||
|
Loading…
x
Reference in New Issue
Block a user