parent
4d030b4e89
commit
06b3c4f484
|
@ -57,20 +57,20 @@ void Mips16FrameLowering::emitPrologue(MachineFunction &MF) const {
|
||||||
const std::vector<CalleeSavedInfo> &CSI = MFI->getCalleeSavedInfo();
|
const std::vector<CalleeSavedInfo> &CSI = MFI->getCalleeSavedInfo();
|
||||||
|
|
||||||
if (CSI.size()) {
|
if (CSI.size()) {
|
||||||
MCSymbol *CSLabel = MMI.getContext().CreateTempSymbol();
|
MCSymbol *CSLabel = MMI.getContext().CreateTempSymbol();
|
||||||
BuildMI(MBB, MBBI, dl,
|
BuildMI(MBB, MBBI, dl,
|
||||||
TII.get(TargetOpcode::PROLOG_LABEL)).addSym(CSLabel);
|
TII.get(TargetOpcode::PROLOG_LABEL)).addSym(CSLabel);
|
||||||
|
|
||||||
|
|
||||||
const std::vector<CalleeSavedInfo> &CSI = MFI->getCalleeSavedInfo();
|
const std::vector<CalleeSavedInfo> &CSI = MFI->getCalleeSavedInfo();
|
||||||
|
|
||||||
for (std::vector<CalleeSavedInfo>::const_iterator I = CSI.begin(),
|
for (std::vector<CalleeSavedInfo>::const_iterator I = CSI.begin(),
|
||||||
E = CSI.end(); I != E; ++I) {
|
E = CSI.end(); I != E; ++I) {
|
||||||
int64_t Offset = MFI->getObjectOffset(I->getFrameIdx());
|
int64_t Offset = MFI->getObjectOffset(I->getFrameIdx());
|
||||||
unsigned Reg = I->getReg();
|
unsigned Reg = I->getReg();
|
||||||
unsigned DReg = MRI->getDwarfRegNum(Reg, true);
|
unsigned DReg = MRI->getDwarfRegNum(Reg, true);
|
||||||
MMI.addFrameInst(MCCFIInstruction::createOffset(CSLabel, DReg, Offset));
|
MMI.addFrameInst(MCCFIInstruction::createOffset(CSLabel, DReg, Offset));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (hasFP(MF))
|
if (hasFP(MF))
|
||||||
BuildMI(MBB, MBBI, dl, TII.get(Mips::MoveR3216), Mips::S0)
|
BuildMI(MBB, MBBI, dl, TII.get(Mips::MoveR3216), Mips::S0)
|
||||||
|
|
Loading…
Reference in New Issue