mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-30 06:19:45 +00:00
Attempt to fix PR11607 by shuffling around which class defines which methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146897 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -646,7 +646,7 @@ public:
|
|||||||
|
|
||||||
virtual int getOperandLatency(const InstrItineraryData *ItinData,
|
virtual int getOperandLatency(const InstrItineraryData *ItinData,
|
||||||
SDNode *DefNode, unsigned DefIdx,
|
SDNode *DefNode, unsigned DefIdx,
|
||||||
SDNode *UseNode, unsigned UseIdx) const;
|
SDNode *UseNode, unsigned UseIdx) const = 0;
|
||||||
|
|
||||||
/// getOutputLatency - Compute and return the output dependency latency of a
|
/// getOutputLatency - Compute and return the output dependency latency of a
|
||||||
/// a given pair of defs which both target the same register. This is usually
|
/// a given pair of defs which both target the same register. This is usually
|
||||||
@@ -665,7 +665,7 @@ public:
|
|||||||
unsigned *PredCost = 0) const;
|
unsigned *PredCost = 0) const;
|
||||||
|
|
||||||
virtual int getInstrLatency(const InstrItineraryData *ItinData,
|
virtual int getInstrLatency(const InstrItineraryData *ItinData,
|
||||||
SDNode *Node) const;
|
SDNode *Node) const = 0;
|
||||||
|
|
||||||
/// isHighLatencyDef - Return true if this opcode has high latency to its
|
/// isHighLatencyDef - Return true if this opcode has high latency to its
|
||||||
/// result.
|
/// result.
|
||||||
@@ -839,6 +839,11 @@ public:
|
|||||||
virtual bool isSchedulingBoundary(const MachineInstr *MI,
|
virtual bool isSchedulingBoundary(const MachineInstr *MI,
|
||||||
const MachineBasicBlock *MBB,
|
const MachineBasicBlock *MBB,
|
||||||
const MachineFunction &MF) const;
|
const MachineFunction &MF) const;
|
||||||
|
virtual int getOperandLatency(const InstrItineraryData *ItinData,
|
||||||
|
SDNode *DefNode, unsigned DefIdx,
|
||||||
|
SDNode *UseNode, unsigned UseIdx) const;
|
||||||
|
virtual int getInstrLatency(const InstrItineraryData *ItinData,
|
||||||
|
SDNode *Node) const;
|
||||||
|
|
||||||
bool usePreRAHazardRecognizer() const;
|
bool usePreRAHazardRecognizer() const;
|
||||||
|
|
||||||
|
@@ -513,7 +513,7 @@ CreateTargetPostRAHazardRecognizer(const InstrItineraryData *II,
|
|||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
TargetInstrInfo::getOperandLatency(const InstrItineraryData *ItinData,
|
TargetInstrInfoImpl::getOperandLatency(const InstrItineraryData *ItinData,
|
||||||
SDNode *DefNode, unsigned DefIdx,
|
SDNode *DefNode, unsigned DefIdx,
|
||||||
SDNode *UseNode, unsigned UseIdx) const {
|
SDNode *UseNode, unsigned UseIdx) const {
|
||||||
if (!ItinData || ItinData->isEmpty())
|
if (!ItinData || ItinData->isEmpty())
|
||||||
@@ -529,7 +529,7 @@ TargetInstrInfo::getOperandLatency(const InstrItineraryData *ItinData,
|
|||||||
return ItinData->getOperandLatency(DefClass, DefIdx, UseClass, UseIdx);
|
return ItinData->getOperandLatency(DefClass, DefIdx, UseClass, UseIdx);
|
||||||
}
|
}
|
||||||
|
|
||||||
int TargetInstrInfo::getInstrLatency(const InstrItineraryData *ItinData,
|
int TargetInstrInfoImpl::getInstrLatency(const InstrItineraryData *ItinData,
|
||||||
SDNode *N) const {
|
SDNode *N) const {
|
||||||
if (!ItinData || ItinData->isEmpty())
|
if (!ItinData || ItinData->isEmpty())
|
||||||
return 1;
|
return 1;
|
||||||
|
Reference in New Issue
Block a user