class GenericSchedulerBase

Declaration

class GenericSchedulerBase : public MachineSchedStrategy { /* full declaration omitted */ };

Description

Base class for GenericScheduler. This class maintains information about scheduling candidates based on TargetSchedModel making it easy to implement heuristics for either preRA or postRA scheduling.

Declared at: llvm/include/llvm/CodeGen/MachineScheduler.h:794

Inherits from: MachineSchedStrategy

Member Variables

protected const llvm::MachineSchedContext* Context
protected const llvm::TargetSchedModel* SchedModel = nullptr
protected const llvm::TargetRegisterInfo* TRI = nullptr
protected llvm::SchedRemainder Rem

Method Overview

  • protected GenericSchedulerBase(const llvm::MachineSchedContext * C)
  • public static const char * getReasonStr(GenericSchedulerBase::CandReason Reason)
  • protected void setPolicy(llvm::GenericSchedulerBase::CandPolicy & Policy, bool IsPostRA, llvm::SchedBoundary & CurrZone, llvm::SchedBoundary * OtherZone)
  • protected void traceCandidate(const llvm::GenericSchedulerBase::SchedCandidate & Cand)

Inherited from MachineSchedStrategy:

Methods

GenericSchedulerBase(
    const llvm::MachineSchedContext* C)

Declared at: llvm/include/llvm/CodeGen/MachineScheduler.h:899

Parameters

const llvm::MachineSchedContext* C

static const char* getReasonStr(
    GenericSchedulerBase::CandReason Reason)

Declared at: llvm/include/llvm/CodeGen/MachineScheduler.h:804

Parameters

GenericSchedulerBase::CandReason Reason

void setPolicy(
    llvm::GenericSchedulerBase::CandPolicy&
        Policy,
    bool IsPostRA,
    llvm::SchedBoundary& CurrZone,
    llvm::SchedBoundary* OtherZone)

Declared at: llvm/include/llvm/CodeGen/MachineScheduler.h:901

Parameters

llvm::GenericSchedulerBase::CandPolicy& Policy
bool IsPostRA
llvm::SchedBoundary& CurrZone
llvm::SchedBoundary* OtherZone

void traceCandidate(
    const llvm::GenericSchedulerBase::
        SchedCandidate& Cand)

Declared at: llvm/include/llvm/CodeGen/MachineScheduler.h:905

Parameters

const llvm::GenericSchedulerBase::SchedCandidate& Cand