mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-24 23:19:03 +00:00
Remove TargetInstrInfo::copyRegToReg entirely.
Targets must now implement TargetInstrInfo::copyPhysReg instead. There is no longer a default implementation forwarding to copyRegToReg. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108095 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -357,7 +357,9 @@ public:
|
||||
virtual void copyPhysReg(MachineBasicBlock &MBB,
|
||||
MachineBasicBlock::iterator MI, DebugLoc DL,
|
||||
unsigned DestReg, unsigned SrcReg,
|
||||
bool KillSrc) const =0;
|
||||
bool KillSrc) const {
|
||||
assert(0 && "Target didn't implement TargetInstrInfo::copyPhysReg!");
|
||||
}
|
||||
|
||||
/// storeRegToStackSlot - Store the specified register of the given register
|
||||
/// class to the specified stack frame index. The store instruction is to be
|
||||
@@ -648,22 +650,6 @@ public:
|
||||
|
||||
virtual ScheduleHazardRecognizer *
|
||||
CreateTargetPostRAHazardRecognizer(const InstrItineraryData&) const;
|
||||
virtual void copyPhysReg(MachineBasicBlock &MBB,
|
||||
MachineBasicBlock::iterator MI, DebugLoc DL,
|
||||
unsigned DestReg, unsigned SrcReg,
|
||||
bool KillSrc) const;
|
||||
/// copyRegToReg - Legacy hook going away soon. Targets should implement
|
||||
/// copyPhysReg instead.
|
||||
virtual bool copyRegToReg(MachineBasicBlock &MBB,
|
||||
MachineBasicBlock::iterator MI,
|
||||
unsigned DestReg, unsigned SrcReg,
|
||||
const TargetRegisterClass *DestRC,
|
||||
const TargetRegisterClass *SrcRC,
|
||||
DebugLoc DL) const {
|
||||
assert(0 && "Target didn't implement TargetInstrInfo::copyPhysReg!");
|
||||
return false;
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
} // End llvm namespace
|
||||
|
||||
@@ -62,8 +62,7 @@ namespace TargetOpcode {
|
||||
/// used between instruction selection and MachineInstr creation, before
|
||||
/// virtual registers have been created for all the instructions, and it's
|
||||
/// only needed in cases where the register classes implied by the
|
||||
/// instructions are insufficient. The actual MachineInstrs to perform
|
||||
/// the copy are emitted with the TargetInstrInfo::copyRegToReg hook.
|
||||
/// instructions are insufficient. It is emitted as a COPY MachineInstr.
|
||||
COPY_TO_REGCLASS = 10,
|
||||
|
||||
/// DBG_VALUE - a mapping of the llvm.dbg.value intrinsic
|
||||
|
||||
Reference in New Issue
Block a user