mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-06 20:18:14 +00:00
Don't cache the instruction and register info from the TargetMachine, because
the internals of TargetMachine could change. No functionality change intended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183494 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -48,12 +48,11 @@
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
PPCRegisterInfo::PPCRegisterInfo(const PPCSubtarget &ST,
|
||||
const TargetInstrInfo &tii)
|
||||
PPCRegisterInfo::PPCRegisterInfo(const PPCSubtarget &ST)
|
||||
: PPCGenRegisterInfo(ST.isPPC64() ? PPC::LR8 : PPC::LR,
|
||||
ST.isPPC64() ? 0 : 1,
|
||||
ST.isPPC64() ? 0 : 1),
|
||||
Subtarget(ST), TII(tii) {
|
||||
Subtarget(ST) {
|
||||
ImmToIdxMap[PPC::LD] = PPC::LDX; ImmToIdxMap[PPC::STD] = PPC::STDX;
|
||||
ImmToIdxMap[PPC::LBZ] = PPC::LBZX; ImmToIdxMap[PPC::STB] = PPC::STBX;
|
||||
ImmToIdxMap[PPC::LHZ] = PPC::LHZX; ImmToIdxMap[PPC::LHA] = PPC::LHAX;
|
||||
@@ -219,6 +218,8 @@ void PPCRegisterInfo::lowerDynamicAlloc(MachineBasicBlock::iterator II) const {
|
||||
MachineFunction &MF = *MBB.getParent();
|
||||
// Get the frame info.
|
||||
MachineFrameInfo *MFI = MF.getFrameInfo();
|
||||
// Get the instruction info.
|
||||
const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
|
||||
// Determine whether 64-bit pointers are used.
|
||||
bool LP64 = Subtarget.isPPC64();
|
||||
DebugLoc dl = MI.getDebugLoc();
|
||||
@@ -312,6 +313,7 @@ void PPCRegisterInfo::lowerCRSpilling(MachineBasicBlock::iterator II,
|
||||
// Get the instruction's basic block.
|
||||
MachineBasicBlock &MBB = *MI.getParent();
|
||||
MachineFunction &MF = *MBB.getParent();
|
||||
const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
|
||||
DebugLoc dl = MI.getDebugLoc();
|
||||
|
||||
bool LP64 = Subtarget.isPPC64();
|
||||
@@ -355,6 +357,7 @@ void PPCRegisterInfo::lowerCRRestore(MachineBasicBlock::iterator II,
|
||||
// Get the instruction's basic block.
|
||||
MachineBasicBlock &MBB = *MI.getParent();
|
||||
MachineFunction &MF = *MBB.getParent();
|
||||
const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
|
||||
DebugLoc dl = MI.getDebugLoc();
|
||||
|
||||
bool LP64 = Subtarget.isPPC64();
|
||||
@@ -396,6 +399,7 @@ void PPCRegisterInfo::lowerVRSAVESpilling(MachineBasicBlock::iterator II,
|
||||
// Get the instruction's basic block.
|
||||
MachineBasicBlock &MBB = *MI.getParent();
|
||||
MachineFunction &MF = *MBB.getParent();
|
||||
const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
|
||||
DebugLoc dl = MI.getDebugLoc();
|
||||
|
||||
const TargetRegisterClass *GPRC = &PPC::GPRCRegClass;
|
||||
@@ -420,6 +424,7 @@ void PPCRegisterInfo::lowerVRSAVERestore(MachineBasicBlock::iterator II,
|
||||
// Get the instruction's basic block.
|
||||
MachineBasicBlock &MBB = *MI.getParent();
|
||||
MachineFunction &MF = *MBB.getParent();
|
||||
const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
|
||||
DebugLoc dl = MI.getDebugLoc();
|
||||
|
||||
const TargetRegisterClass *GPRC = &PPC::GPRCRegClass;
|
||||
@@ -497,6 +502,8 @@ PPCRegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator II,
|
||||
MachineBasicBlock &MBB = *MI.getParent();
|
||||
// Get the basic block's function.
|
||||
MachineFunction &MF = *MBB.getParent();
|
||||
// Get the instruction info.
|
||||
const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
|
||||
// Get the frame info.
|
||||
MachineFrameInfo *MFI = MF.getFrameInfo();
|
||||
const TargetFrameLowering *TFI = MF.getTarget().getFrameLowering();
|
||||
@@ -706,9 +713,10 @@ materializeFrameBaseRegister(MachineBasicBlock *MBB,
|
||||
if (Ins != MBB->end())
|
||||
DL = Ins->getDebugLoc();
|
||||
|
||||
const MachineFunction &MF = *MBB->getParent();
|
||||
const TargetInstrInfo &TII = *MF.getTarget().getInstrInfo();
|
||||
const MCInstrDesc &MCID = TII.get(ADDriOpc);
|
||||
MachineRegisterInfo &MRI = MBB->getParent()->getRegInfo();
|
||||
const MachineFunction &MF = *MBB->getParent();
|
||||
MRI.constrainRegClass(BaseReg, TII.getRegClass(MCID, 0, this, MF));
|
||||
|
||||
BuildMI(*MBB, Ins, DL, MCID, BaseReg)
|
||||
|
||||
Reference in New Issue
Block a user