mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-03-01 01:30:36 +00:00
Teach PPCInstrInfo::storeRegToStackSlot and loadRegFromStackSlot to add memory
operands. Hopefully this fixes the llvm-gcc-powerpc-darwin9 buildbot. It really shouldn't since missing memoperands should not affect correctness. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108540 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1e381fcd55
commit
7a79fcb55b
@ -18,8 +18,11 @@
|
|||||||
#include "PPCGenInstrInfo.inc"
|
#include "PPCGenInstrInfo.inc"
|
||||||
#include "PPCTargetMachine.h"
|
#include "PPCTargetMachine.h"
|
||||||
#include "llvm/ADT/STLExtras.h"
|
#include "llvm/ADT/STLExtras.h"
|
||||||
|
#include "llvm/CodeGen/MachineFrameInfo.h"
|
||||||
#include "llvm/CodeGen/MachineInstrBuilder.h"
|
#include "llvm/CodeGen/MachineInstrBuilder.h"
|
||||||
|
#include "llvm/CodeGen/MachineMemOperand.h"
|
||||||
#include "llvm/CodeGen/MachineRegisterInfo.h"
|
#include "llvm/CodeGen/MachineRegisterInfo.h"
|
||||||
|
#include "llvm/CodeGen/PseudoSourceValue.h"
|
||||||
#include "llvm/Support/CommandLine.h"
|
#include "llvm/Support/CommandLine.h"
|
||||||
#include "llvm/Support/ErrorHandling.h"
|
#include "llvm/Support/ErrorHandling.h"
|
||||||
#include "llvm/Support/raw_ostream.h"
|
#include "llvm/Support/raw_ostream.h"
|
||||||
@ -524,6 +527,14 @@ PPCInstrInfo::storeRegToStackSlot(MachineBasicBlock &MBB,
|
|||||||
|
|
||||||
for (unsigned i = 0, e = NewMIs.size(); i != e; ++i)
|
for (unsigned i = 0, e = NewMIs.size(); i != e; ++i)
|
||||||
MBB.insert(MI, NewMIs[i]);
|
MBB.insert(MI, NewMIs[i]);
|
||||||
|
|
||||||
|
const MachineFrameInfo &MFI = *MF.getFrameInfo();
|
||||||
|
MachineMemOperand *MMO =
|
||||||
|
MF.getMachineMemOperand(PseudoSourceValue::getFixedStack(FrameIdx),
|
||||||
|
MachineMemOperand::MOStore, /*Offset=*/0,
|
||||||
|
MFI.getObjectSize(FrameIdx),
|
||||||
|
MFI.getObjectAlignment(FrameIdx));
|
||||||
|
NewMIs.back()->addMemOperand(MF, MMO);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -637,6 +648,14 @@ PPCInstrInfo::loadRegFromStackSlot(MachineBasicBlock &MBB,
|
|||||||
LoadRegFromStackSlot(MF, DL, DestReg, FrameIdx, RC, NewMIs);
|
LoadRegFromStackSlot(MF, DL, DestReg, FrameIdx, RC, NewMIs);
|
||||||
for (unsigned i = 0, e = NewMIs.size(); i != e; ++i)
|
for (unsigned i = 0, e = NewMIs.size(); i != e; ++i)
|
||||||
MBB.insert(MI, NewMIs[i]);
|
MBB.insert(MI, NewMIs[i]);
|
||||||
|
|
||||||
|
const MachineFrameInfo &MFI = *MF.getFrameInfo();
|
||||||
|
MachineMemOperand *MMO =
|
||||||
|
MF.getMachineMemOperand(PseudoSourceValue::getFixedStack(FrameIdx),
|
||||||
|
MachineMemOperand::MOLoad, /*Offset=*/0,
|
||||||
|
MFI.getObjectSize(FrameIdx),
|
||||||
|
MFI.getObjectAlignment(FrameIdx));
|
||||||
|
NewMIs.back()->addMemOperand(MF, MMO);
|
||||||
}
|
}
|
||||||
|
|
||||||
MachineInstr*
|
MachineInstr*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user