LLVM 20.0.0git
Public Types | Public Member Functions | Public Attributes | List of all members
llvm::yaml::MachineStackObject Struct Reference

Serializable representation of stack object from the MachineFrameInfo class. More...

#include "llvm/CodeGen/MIRYamlMapping.h"

Public Types

enum  ObjectType { DefaultType , SpillSlot , VariableSized }
 

Public Member Functions

bool operator== (const MachineStackObject &Other) const
 

Public Attributes

UnsignedValue ID
 
StringValue Name
 
ObjectType Type = DefaultType
 
int64_t Offset = 0
 
uint64_t Size = 0
 
MaybeAlign Alignment = std::nullopt
 
TargetStackID::Value StackID
 
StringValue CalleeSavedRegister
 
bool CalleeSavedRestored = true
 
std::optional< int64_t > LocalOffset
 
StringValue DebugVar
 
StringValue DebugExpr
 
StringValue DebugLoc
 

Detailed Description

Serializable representation of stack object from the MachineFrameInfo class.

The flags 'isImmutable' and 'isAliased' aren't serialized, as they are determined by the object's type and frame information flags. Dead stack objects aren't serialized.

The 'isPreallocated' flag is determined by the local offset.

Definition at line 242 of file MIRYamlMapping.h.

Member Enumeration Documentation

◆ ObjectType

Enumerator
DefaultType 
SpillSlot 
VariableSized 

Definition at line 243 of file MIRYamlMapping.h.

Member Function Documentation

◆ operator==()

bool llvm::yaml::MachineStackObject::operator== ( const MachineStackObject Other) const
inline

Member Data Documentation

◆ Alignment

MaybeAlign llvm::yaml::MachineStackObject::Alignment = std::nullopt

Definition at line 250 of file MIRYamlMapping.h.

Referenced by llvm::MIRPrinter::convertStackObjects(), and operator==().

◆ CalleeSavedRegister

StringValue llvm::yaml::MachineStackObject::CalleeSavedRegister

Definition at line 252 of file MIRYamlMapping.h.

Referenced by operator==().

◆ CalleeSavedRestored

bool llvm::yaml::MachineStackObject::CalleeSavedRestored = true

Definition at line 253 of file MIRYamlMapping.h.

Referenced by operator==().

◆ DebugExpr

StringValue llvm::yaml::MachineStackObject::DebugExpr

Definition at line 256 of file MIRYamlMapping.h.

Referenced by operator==().

◆ DebugLoc

StringValue llvm::yaml::MachineStackObject::DebugLoc

Definition at line 257 of file MIRYamlMapping.h.

◆ DebugVar

StringValue llvm::yaml::MachineStackObject::DebugVar

Definition at line 255 of file MIRYamlMapping.h.

Referenced by operator==().

◆ ID

UnsignedValue llvm::yaml::MachineStackObject::ID

Definition at line 244 of file MIRYamlMapping.h.

Referenced by llvm::MIRPrinter::convertStackObjects().

◆ LocalOffset

std::optional<int64_t> llvm::yaml::MachineStackObject::LocalOffset

Definition at line 254 of file MIRYamlMapping.h.

Referenced by operator==().

◆ Name

StringValue llvm::yaml::MachineStackObject::Name

Definition at line 245 of file MIRYamlMapping.h.

Referenced by llvm::MIRPrinter::convertStackObjects(), and operator==().

◆ Offset

int64_t llvm::yaml::MachineStackObject::Offset = 0

Definition at line 248 of file MIRYamlMapping.h.

Referenced by llvm::MIRPrinter::convertStackObjects(), and operator==().

◆ Size

uint64_t llvm::yaml::MachineStackObject::Size = 0

Definition at line 249 of file MIRYamlMapping.h.

Referenced by llvm::MIRPrinter::convertStackObjects(), and operator==().

◆ StackID

TargetStackID::Value llvm::yaml::MachineStackObject::StackID

Definition at line 251 of file MIRYamlMapping.h.

Referenced by llvm::MIRPrinter::convertStackObjects(), and operator==().

◆ Type

ObjectType llvm::yaml::MachineStackObject::Type = DefaultType

Definition at line 247 of file MIRYamlMapping.h.

Referenced by llvm::MIRPrinter::convertStackObjects().


The documentation for this struct was generated from the following file: