mini-llvm 0.1.0
Loading...
Searching...
No Matches
mini_llvm::mir::RISCVCall Class Referencefinal

#include <RISCVCall.h>

Inheritance diagram for mini_llvm::mir::RISCVCall:
Collaboration diagram for mini_llvm::mir::RISCVCall:

Public Member Functions

 RISCVCall (Function *callee, int numIntegerArgs, int numFloatingArgs)
template<typename Self>
auto & callee (this Self &&self)
int numIntegerArgs () const
void setNumIntegerArgs (int numIntegerArgs)
int numFloatingArgs () const
void setNumFloatingArgs (int numFloatingArgs)
std::unordered_set< const RegisterOperand * > regOps () const override
std::unordered_set< const RegisterOperand * > dsts () const override
std::unordered_set< const RegisterOperand * > srcs () const override
std::unordered_set< const MemoryOperand * > memOps () const override
std::unordered_set< PhysicalRegister * > implicitDsts () const override
std::unordered_set< PhysicalRegister * > implicitSrcs () const override
std::unordered_set< const ImmediateOperand * > immOps () const override
bool hasSideEffects () const override
void accept (InstructionVisitor &visitor) override
void accept (InstructionVisitor &visitor) const override
std::string format () const override
std::unique_ptr< Instructionclone () const override
Public Member Functions inherited from mini_llvm::mir::Instruction
virtual ~Instruction ()=default
 Instruction ()=default
 Instruction (const Instruction &)=delete
Instructionoperator= (const Instruction &)=delete
 Instruction (Instruction &&)=delete
Instructionoperator= (Instruction &&)=delete
std::unordered_set< RegisterOperand * > regOps ()
std::unordered_set< RegisterOperand * > dsts ()
std::unordered_set< RegisterOperand * > srcs ()
std::unordered_set< ImmediateOperand * > immOps ()
std::unordered_set< MemoryOperand * > memOps ()
virtual bool isCoalescent () const
virtual RegistercoalescenceDst () const
virtual RegistercoalescenceSrc () const

Constructor & Destructor Documentation

◆ RISCVCall()

mini_llvm::mir::RISCVCall::RISCVCall ( Function * callee,
int numIntegerArgs,
int numFloatingArgs )
inline

Member Function Documentation

◆ accept() [1/2]

void mini_llvm::mir::RISCVCall::accept ( InstructionVisitor & visitor) const
inlineoverridevirtual

◆ accept() [2/2]

void mini_llvm::mir::RISCVCall::accept ( InstructionVisitor & visitor)
inlineoverridevirtual

◆ callee()

template<typename Self>
auto & mini_llvm::mir::RISCVCall::callee ( this Self && self)
inline

◆ clone()

std::unique_ptr< Instruction > mini_llvm::mir::RISCVCall::clone ( ) const
inlineoverridevirtual

◆ dsts()

std::unordered_set< const RegisterOperand * > mini_llvm::mir::RISCVCall::dsts ( ) const
inlineoverridevirtual

◆ format()

std::string mini_llvm::mir::RISCVCall::format ( ) const
overridevirtual

◆ hasSideEffects()

bool mini_llvm::mir::RISCVCall::hasSideEffects ( ) const
inlineoverridevirtual

◆ immOps()

std::unordered_set< const ImmediateOperand * > mini_llvm::mir::RISCVCall::immOps ( ) const
inlineoverridevirtual

◆ implicitDsts()

std::unordered_set< PhysicalRegister * > mini_llvm::mir::RISCVCall::implicitDsts ( ) const
overridevirtual

Reimplemented from mini_llvm::mir::Instruction.

◆ implicitSrcs()

std::unordered_set< PhysicalRegister * > mini_llvm::mir::RISCVCall::implicitSrcs ( ) const
overridevirtual

Reimplemented from mini_llvm::mir::Instruction.

◆ memOps()

std::unordered_set< const MemoryOperand * > mini_llvm::mir::RISCVCall::memOps ( ) const
inlineoverridevirtual

◆ numFloatingArgs()

int mini_llvm::mir::RISCVCall::numFloatingArgs ( ) const
inline

◆ numIntegerArgs()

int mini_llvm::mir::RISCVCall::numIntegerArgs ( ) const
inline

◆ regOps()

std::unordered_set< const RegisterOperand * > mini_llvm::mir::RISCVCall::regOps ( ) const
inlineoverridevirtual

◆ setNumFloatingArgs()

void mini_llvm::mir::RISCVCall::setNumFloatingArgs ( int numFloatingArgs)
inline

◆ setNumIntegerArgs()

void mini_llvm::mir::RISCVCall::setNumIntegerArgs ( int numIntegerArgs)
inline

◆ srcs()

std::unordered_set< const RegisterOperand * > mini_llvm::mir::RISCVCall::srcs ( ) const
inlineoverridevirtual

The documentation for this class was generated from the following file:
  • include/mini-llvm/targets/riscv/mir/Instruction/RISCVCall.h