LLVM 22.0.0git
llvm::HexagonVLIWResourceModel Class Reference

#include "Target/Hexagon/HexagonMachineScheduler.h"

Inheritance diagram for llvm::HexagonVLIWResourceModel:
[legend]

Public Member Functions

bool hasDependence (const SUnit *SUd, const SUnit *SUu) override
 Return true if there is a dependence between SUd and SUu.
 VLIWResourceModel (const TargetSubtargetInfo &STI, const TargetSchedModel *SM)
 VLIWResourceModel (const VLIWResourceModel &other)=delete
Public Member Functions inherited from llvm::VLIWResourceModel
 VLIWResourceModel (const TargetSubtargetInfo &STI, const TargetSchedModel *SM)
VLIWResourceModeloperator= (const VLIWResourceModel &other)=delete
 VLIWResourceModel (const VLIWResourceModel &other)=delete
virtual ~VLIWResourceModel ()
virtual void reset ()
virtual bool isResourceAvailable (SUnit *SU, bool IsTop)
 Check if scheduling of this SU is possible in the current packet.
virtual bool reserveResources (SUnit *SU, bool IsTop)
 Keep track of available resources.
unsigned getTotalPackets () const
size_t getPacketInstCount () const
bool isInPacket (SUnit *SU) const

Additional Inherited Members

Protected Member Functions inherited from llvm::VLIWResourceModel
virtual DFAPacketizercreatePacketizer (const TargetSubtargetInfo &STI) const
Protected Attributes inherited from llvm::VLIWResourceModel
const TargetInstrInfoTII
DFAPacketizerResourcesModel
 ResourcesModel - Represents VLIW state.
const TargetSchedModelSchedModel
SmallVector< SUnit * > Packet
 Local packet/bundle model.
unsigned TotalPackets = 0
 Total packets created.

Detailed Description

Definition at line 25 of file HexagonMachineScheduler.h.

Member Function Documentation

◆ hasDependence()

bool HexagonVLIWResourceModel::hasDependence ( const SUnit * SUd,
const SUnit * SUu )
overridevirtual

Return true if there is a dependence between SUd and SUu.

Reimplemented from llvm::VLIWResourceModel.

Definition at line 26 of file HexagonMachineScheduler.cpp.

References llvm::SUnit::getInstr(), llvm::VLIWResourceModel::hasDependence(), and llvm::VLIWResourceModel::TII.

◆ VLIWResourceModel() [1/2]

VLIWResourceModel::VLIWResourceModel ( const TargetSubtargetInfo & STI,
const TargetSchedModel * SM )

Definition at line 50 of file VLIWMachineScheduler.cpp.

References llvm::cl::Hidden, and llvm::cl::init().

◆ VLIWResourceModel() [2/2]

llvm::VLIWResourceModel::VLIWResourceModel ( const VLIWResourceModel & other)
delete

The documentation for this class was generated from the following files: