LLVM: llvm::SystemZHazardRecognizer Class Reference (original) (raw)
SystemZHazardRecognizer maintains the state for one MBB during scheduling. More...
#include "[Target/SystemZ/SystemZHazardRecognizer.h](SystemZHazardRecognizer%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| SystemZHazardRecognizer (const SystemZInstrInfo *tii, const TargetSchedModel *SM) | |
| HazardType | getHazardType (SUnit *SU, int Stalls=0) override |
| getHazardType - Return the hazard type of emitting this node. | |
| void | Reset () override |
| Reset - This callback is invoked when a new block of instructions is about to be schedule. | |
| void | EmitInstruction (SUnit *SU) override |
| EmitInstruction - This callback is invoked when an instruction is emitted, to advance the hazard state. | |
| const MCSchedClassDesc * | getSchedClass (SUnit *SU) const |
| Resolves and cache a resolved scheduling class for an SUnit. | |
| void | emitInstruction (MachineInstr *MI, bool TakenBranch=false) |
| Wrap a non-scheduled instruction in an SU and emit it. | |
| int | groupingCost (SUnit *SU) const |
| Return the cost of decoder grouping for SU. | |
| int | resourcesCost (SUnit *SU) |
| Return the cost of SU in regards to processor resources usage. | |
| void | dumpSU (SUnit *SU, raw_ostream &OS) const |
| void | dumpCurrGroup (std::string Msg="") const |
| void | dumpProcResourceCounters () const |
| void | dumpState () const |
| MachineBasicBlock::iterator | getLastEmittedMI () |
| void | copyState (SystemZHazardRecognizer *Incoming) |
| Copy counters from end of single predecessor. | |
| Public Member Functions inherited from llvm::ScheduleHazardRecognizer | |
| ScheduleHazardRecognizer ()=default | |
| virtual | ~ScheduleHazardRecognizer () |
| unsigned | getMaxLookAhead () const |
| bool | isEnabled () const |
| virtual bool | atIssueLimit () const |
| atIssueLimit - Return true if no more instructions may be issued in this cycle. | |
| virtual void | EmitInstruction (MachineInstr *) |
| This overload will be used when the hazard recognizer is being used by a non-scheduling pass, which does not use SUnits. | |
| virtual unsigned | PreEmitNoops (SUnit *) |
| PreEmitNoops - This callback is invoked prior to emitting an instruction. | |
| virtual unsigned | PreEmitNoops (MachineInstr *) |
| This overload will be used when the hazard recognizer is being used by a non-scheduling pass, which does not use SUnits. | |
| virtual bool | ShouldPreferAnother (SUnit *) |
| ShouldPreferAnother - This callback may be invoked if getHazardType returns NoHazard. | |
| virtual void | AdvanceCycle () |
| AdvanceCycle - This callback is invoked whenever the next top-down instruction to be scheduled cannot issue in the current cycle, either because of latency or resource conflicts. | |
| virtual void | RecedeCycle () |
| RecedeCycle - This callback is invoked whenever the next bottom-up instruction to be scheduled cannot issue in the current cycle, either because of latency or resource conflicts. | |
| virtual void | EmitNoop () |
| EmitNoop - This callback is invoked when a noop was added to the instruction stream. | |
| virtual void | EmitNoops (unsigned Quantity) |
| EmitNoops - This callback is invoked when noops were added to the instruction stream. |
| Public Attributes | |
|---|---|
| std::string | CurGroupDbg |
| Additional Inherited Members | |
|---|---|
| Public Types inherited from llvm::ScheduleHazardRecognizer | |
| enum | HazardType { NoHazard, Hazard, NoopHazard } |
| Protected Attributes inherited from llvm::ScheduleHazardRecognizer | |
| unsigned | MaxLookAhead = 0 |
| MaxLookAhead - Indicate the number of cycles in the scoreboard state. |
SystemZHazardRecognizer maintains the state for one MBB during scheduling.
Definition at line 45 of file SystemZHazardRecognizer.h.
◆ copyState()
◆ dumpCurrGroup()
| void SystemZHazardRecognizer::dumpCurrGroup | ( | std::string | Msg = "" | ) | const |
|---|
◆ dumpProcResourceCounters()
| void SystemZHazardRecognizer::dumpProcResourceCounters | ( | ) | const |
|---|
◆ dumpState()
| void SystemZHazardRecognizer::dumpState | ( | ) | const |
|---|
◆ dumpSU()
◆ EmitInstruction()
| void SystemZHazardRecognizer::EmitInstruction ( SUnit * ) | overridevirtual |
|---|
EmitInstruction - This callback is invoked when an instruction is emitted, to advance the hazard state.
Reimplemented from llvm::ScheduleHazardRecognizer.
Definition at line 268 of file SystemZHazardRecognizer.cpp.
References assert(), CurGroupDbg, llvm::dbgs(), dumpCurrGroup(), dumpSU(), llvm::MCSchedClassDesc::EndGroup, llvm::SUnit::getInstr(), getSchedClass(), llvm::SUnit::isCall, llvm::SUnit::isUnbuffered, LLVM_DEBUG, ProcResCostLim, and Reset().
Referenced by emitInstruction().
◆ emitInstruction()
| void SystemZHazardRecognizer::emitInstruction | ( | MachineInstr * | MI, |
|---|---|---|---|
| bool | TakenBranch = false ) |
◆ getHazardType()
◆ getLastEmittedMI()
◆ getSchedClass()
◆ groupingCost()
| int SystemZHazardRecognizer::groupingCost | ( | SUnit * | SU | ) | const |
|---|
◆ Reset()
| void SystemZHazardRecognizer::Reset ( ) | overridevirtual |
|---|
◆ resourcesCost()
| int SystemZHazardRecognizer::resourcesCost | ( | SUnit * | SU | ) |
|---|
◆ CurGroupDbg
std::string llvm::SystemZHazardRecognizer::CurGroupDbg
The documentation for this class was generated from the following files:
- lib/Target/SystemZ/SystemZHazardRecognizer.h
- lib/Target/SystemZ/SystemZHazardRecognizer.cpp