LLVM 19.0.0git
Public Member Functions | List of all members
llvm::HexagonVLIWResourceModel Class Reference

#include "Target/Hexagon/HexagonMachineScheduler.h"

Inheritance diagram for llvm::HexagonVLIWResourceModel:
Inheritance graph

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 hasDependence (const SUnit *SUd, const SUnit *SUu)
 Return true if there is a dependence between SUd and SUu.
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
 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 

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.

◆ VLIWResourceModel() [2/2]

llvm::VLIWResourceModel::VLIWResourceModel ( const VLIWResourceModel other)

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