LLVM 18.0.0git
Public Member Functions | List of all members
llvm::AMDGPUTargetELFStreamer Class Referencefinal

#include "Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h"

Inheritance diagram for llvm::AMDGPUTargetELFStreamer:
Inheritance graph
[legend]

Public Member Functions

 AMDGPUTargetELFStreamer (MCStreamer &S, const MCSubtargetInfo &STI)
 
MCELFStreamergetStreamer ()
 
void finish () override
 
void EmitDirectiveAMDGCNTarget () override
 
void EmitDirectiveHSACodeObjectVersion (uint32_t Major, uint32_t Minor) override
 
void EmitDirectiveHSACodeObjectISAV2 (uint32_t Major, uint32_t Minor, uint32_t Stepping, StringRef VendorName, StringRef ArchName) override
 
void EmitAMDKernelCodeT (const amd_kernel_code_t &Header) override
 
void EmitAMDGPUSymbolType (StringRef SymbolName, unsigned Type) override
 
void emitAMDGPULDS (MCSymbol *Sym, unsigned Size, Align Alignment) override
 
bool EmitISAVersion () override
 
bool EmitHSAMetadata (msgpack::Document &HSAMetadata, bool Strict) override
 
bool EmitHSAMetadata (const AMDGPU::HSAMD::Metadata &HSAMetadata) override
 
bool EmitCodeEnd (const MCSubtargetInfo &STI) override
 
bool EmitKernargPreloadHeader (const MCSubtargetInfo &STI) override
 
void EmitAmdhsaKernelDescriptor (const MCSubtargetInfo &STI, StringRef KernelName, const amdhsa::kernel_descriptor_t &KernelDescriptor, uint64_t NextVGPR, uint64_t NextSGPR, bool ReserveVCC, bool ReserveFlatScr, unsigned CodeObjectVersion) override
 
- Public Member Functions inherited from llvm::AMDGPUTargetStreamer
 AMDGPUTargetStreamer (MCStreamer &S)
 
AMDGPUPALMetadatagetPALMetadata ()
 
virtual void EmitDirectiveAMDGCNTarget ()
 
virtual void EmitDirectiveHSACodeObjectVersion (uint32_t Major, uint32_t Minor)
 
virtual void EmitDirectiveHSACodeObjectISAV2 (uint32_t Major, uint32_t Minor, uint32_t Stepping, StringRef VendorName, StringRef ArchName)
 
virtual void EmitAMDKernelCodeT (const amd_kernel_code_t &Header)
 
virtual void EmitAMDGPUSymbolType (StringRef SymbolName, unsigned Type)
 
virtual void emitAMDGPULDS (MCSymbol *Symbol, unsigned Size, Align Alignment)
 
virtual bool EmitISAVersion ()
 
virtual bool EmitHSAMetadataV2 (StringRef HSAMetadataString)
 
virtual bool EmitHSAMetadataV3 (StringRef HSAMetadataString)
 
virtual bool EmitHSAMetadata (msgpack::Document &HSAMetadata, bool Strict)
 Emit HSA Metadata.
 
virtual bool EmitHSAMetadata (const AMDGPU::HSAMD::Metadata &HSAMetadata)
 
virtual bool EmitCodeEnd (const MCSubtargetInfo &STI)
 
virtual bool EmitKernargPreloadHeader (const MCSubtargetInfo &STI)
 
virtual void EmitAmdhsaKernelDescriptor (const MCSubtargetInfo &STI, StringRef KernelName, const amdhsa::kernel_descriptor_t &KernelDescriptor, uint64_t NextVGPR, uint64_t NextSGPR, bool ReserveVCC, bool ReserveFlatScr, unsigned CodeObjectVersion)
 
const std::optional< AMDGPU::IsaInfo::AMDGPUTargetID > & getTargetID () const
 
std::optional< AMDGPU::IsaInfo::AMDGPUTargetID > & getTargetID ()
 
void initializeTargetID (const MCSubtargetInfo &STI, unsigned CodeObjectVersion)
 
void initializeTargetID (const MCSubtargetInfo &STI, StringRef FeatureString, unsigned CodeObjectVersion)
 
- Public Member Functions inherited from llvm::MCTargetStreamer
 MCTargetStreamer (MCStreamer &S)
 
virtual ~MCTargetStreamer ()
 
MCStreamergetStreamer ()
 
virtual void emitLabel (MCSymbol *Symbol)
 
virtual void emitAssignment (MCSymbol *Symbol, const MCExpr *Value)
 
virtual void prettyPrintAsm (MCInstPrinter &InstPrinter, uint64_t Address, const MCInst &Inst, const MCSubtargetInfo &STI, raw_ostream &OS)
 
virtual void emitDwarfFileDirective (StringRef Directive)
 
virtual void changeSection (const MCSection *CurSection, MCSection *Section, const MCExpr *SubSection, raw_ostream &OS)
 Update streamer for a new active section.
 
virtual void emitValue (const MCExpr *Value)
 
virtual void emitRawBytes (StringRef Data)
 Emit the bytes in Data into the output.
 
virtual void emitConstantPools ()
 
virtual void finish ()
 

Additional Inherited Members

- Static Public Member Functions inherited from llvm::AMDGPUTargetStreamer
static StringRef getArchNameFromElfMach (unsigned ElfMach)
 
static unsigned getElfMach (StringRef GPU)
 
- Protected Member Functions inherited from llvm::AMDGPUTargetStreamer
MCContextgetContext () const
 
- Protected Attributes inherited from llvm::AMDGPUTargetStreamer
std::optional< AMDGPU::IsaInfo::AMDGPUTargetIDTargetID
 
- Protected Attributes inherited from llvm::MCTargetStreamer
MCStreamerStreamer
 

Detailed Description

Definition at line 172 of file AMDGPUTargetStreamer.h.

Constructor & Destructor Documentation

◆ AMDGPUTargetELFStreamer()

AMDGPUTargetELFStreamer::AMDGPUTargetELFStreamer ( MCStreamer S,
const MCSubtargetInfo STI 
)

Definition at line 506 of file AMDGPUTargetStreamer.cpp.

Member Function Documentation

◆ emitAMDGPULDS()

void AMDGPUTargetELFStreamer::emitAMDGPULDS ( MCSymbol Sym,
unsigned  Size,
Align  Alignment 
)
overridevirtual

◆ EmitAMDGPUSymbolType()

void AMDGPUTargetELFStreamer::EmitAMDGPUSymbolType ( StringRef  SymbolName,
unsigned  Type 
)
overridevirtual

Reimplemented from llvm::AMDGPUTargetStreamer.

Definition at line 737 of file AMDGPUTargetStreamer.cpp.

References llvm::AMDGPUTargetStreamer::getContext(), and getStreamer().

◆ EmitAmdhsaKernelDescriptor()

void AMDGPUTargetELFStreamer::EmitAmdhsaKernelDescriptor ( const MCSubtargetInfo STI,
StringRef  KernelName,
const amdhsa::kernel_descriptor_t KernelDescriptor,
uint64_t  NextVGPR,
uint64_t  NextSGPR,
bool  ReserveVCC,
bool  ReserveFlatScr,
unsigned  CodeObjectVersion 
)
overridevirtual

◆ EmitAMDKernelCodeT()

void AMDGPUTargetELFStreamer::EmitAMDKernelCodeT ( const amd_kernel_code_t Header)
overridevirtual

Reimplemented from llvm::AMDGPUTargetStreamer.

Definition at line 729 of file AMDGPUTargetStreamer.cpp.

References getStreamer(), and OS.

◆ EmitCodeEnd()

bool AMDGPUTargetELFStreamer::EmitCodeEnd ( const MCSubtargetInfo STI)
overridevirtual
Returns
True on success, false on failure.

Reimplemented from llvm::AMDGPUTargetStreamer.

Definition at line 851 of file AMDGPUTargetStreamer.cpp.

References CacheLineSize, getStreamer(), I, llvm::AMDGPU::isGFX11Plus(), llvm::AMDGPU::isGFX90A(), and OS.

◆ EmitDirectiveAMDGCNTarget()

void AMDGPUTargetELFStreamer::EmitDirectiveAMDGCNTarget ( )
overridevirtual

Reimplemented from llvm::AMDGPUTargetStreamer.

Definition at line 688 of file AMDGPUTargetStreamer.cpp.

◆ EmitDirectiveHSACodeObjectISAV2()

void AMDGPUTargetELFStreamer::EmitDirectiveHSACodeObjectISAV2 ( uint32_t  Major,
uint32_t  Minor,
uint32_t  Stepping,
StringRef  VendorName,
StringRef  ArchName 
)
overridevirtual

◆ EmitDirectiveHSACodeObjectVersion()

void AMDGPUTargetELFStreamer::EmitDirectiveHSACodeObjectVersion ( uint32_t  Major,
uint32_t  Minor 
)
overridevirtual

◆ EmitHSAMetadata() [1/2]

bool AMDGPUTargetELFStreamer::EmitHSAMetadata ( const AMDGPU::HSAMD::Metadata HSAMetadata)
overridevirtual

◆ EmitHSAMetadata() [2/2]

bool AMDGPUTargetELFStreamer::EmitHSAMetadata ( msgpack::Document HSAMetadata,
bool  Strict 
)
overridevirtual

◆ EmitISAVersion()

bool AMDGPUTargetELFStreamer::EmitISAVersion ( )
overridevirtual

◆ EmitKernargPreloadHeader()

bool AMDGPUTargetELFStreamer::EmitKernargPreloadHeader ( const MCSubtargetInfo STI)
overridevirtual
Returns
True on success, false on failure.

Reimplemented from llvm::AMDGPUTargetStreamer.

Definition at line 841 of file AMDGPUTargetStreamer.cpp.

References getStreamer(), and OS.

◆ finish()

void AMDGPUTargetELFStreamer::finish ( )
overridevirtual

◆ getStreamer()

MCELFStreamer & AMDGPUTargetELFStreamer::getStreamer ( )

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