LLVM 24.0.0git
llvm::NVPTXAsmTargetStreamer Class Reference

#include "Target/NVPTX/MCTargetDesc/NVPTXTargetStreamer.h"

Inheritance diagram for llvm::NVPTXAsmTargetStreamer:
[legend]

Public Member Functions

 NVPTXAsmTargetStreamer (MCStreamer &S, formatted_raw_ostream &OS)
 ~NVPTXAsmTargetStreamer () override
void emitBanner () override
 Emit the banner which specifies details of PTX generator.
void emitVersionDirective (unsigned PTXVersion) override
 Emit the PTX ISA version number.
void emitTargetDirective (StringRef Target, bool TexModeIndependent, bool HasDebug) override
 Emit architecture and platform target.
void emitAddressSizeDirective (unsigned AddrSize) override
 Emit address size used for this PTX module.
void emitBranchTargetsDirective (ArrayRef< const MCSymbol * > Targets) override
 Emit the list of branch targets a brx.idx may jump to.
void emitRegDirective (unsigned SizeInBits, StringRef Name, std::optional< unsigned > Count) override
 Declare a register SizeInBits wide.
void emitLocalDirective (Align Alignment, const MCSymbol *Name, uint64_t Size) override
 Declare Size bytes of local (stack) memory named Name.
void emitAliasDirective (const MCSymbol *Name, const MCSymbol *Aliasee) override
 Emit an alias from Name to Aliasee.
void emitPragmaDirective (StringRef Pragma) override
 Emit a pragma governing the code that follows it.
void emitEmptySectionDirective (StringRef Name) override
 Emit a section with an empty body.
Public Member Functions inherited from llvm::NVPTXTargetStreamer
 NVPTXTargetStreamer (MCStreamer &S)
 ~NVPTXTargetStreamer () override
void outputDwarfFileDirectives ()
 Outputs the list of the DWARF '.file' directives to the streamer.
void closeLastSection ()
 Close last section.
void emitDwarfFileDirective (StringRef Directive) override
 Record DWARF file directives for later output.
void changeSection (const MCSection *CurSection, MCSection *Section, uint32_t SubSection, raw_ostream &OS) override
 Update streamer for a new active section.
void emitRawBytes (StringRef Data) override
 Emit the bytes in Data into the output.
void emitValue (const MCExpr *Value) override
 Makes sure that labels are mangled the same way as the actual symbols.
Public Member Functions inherited from llvm::MCTargetStreamer
 MCTargetStreamer (MCStreamer &S)
virtual ~MCTargetStreamer ()
MCStreamergetStreamer ()
MCContextgetContext ()
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 emitConstantPools ()
virtual void finish ()

Additional Inherited Members

Protected Attributes inherited from llvm::MCTargetStreamer
MCStreamerStreamer

Detailed Description

Definition at line 95 of file NVPTXTargetStreamer.h.

Constructor & Destructor Documentation

◆ NVPTXAsmTargetStreamer()

NVPTXAsmTargetStreamer::NVPTXAsmTargetStreamer ( MCStreamer & S,
formatted_raw_ostream & OS )

◆ ~NVPTXAsmTargetStreamer()

NVPTXAsmTargetStreamer::~NVPTXAsmTargetStreamer ( )
overridedefault

References llvm::Count, and Size.

Member Function Documentation

◆ emitAddressSizeDirective()

void NVPTXAsmTargetStreamer::emitAddressSizeDirective ( unsigned AddrSize)
overridevirtual

Emit address size used for this PTX module.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 182 of file NVPTXTargetStreamer.cpp.

◆ emitAliasDirective()

void NVPTXAsmTargetStreamer::emitAliasDirective ( const MCSymbol * Name,
const MCSymbol * Aliasee )
overridevirtual

◆ emitBanner()

void NVPTXAsmTargetStreamer::emitBanner ( )
overridevirtual

Emit the banner which specifies details of PTX generator.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 160 of file NVPTXTargetStreamer.cpp.

◆ emitBranchTargetsDirective()

void NVPTXAsmTargetStreamer::emitBranchTargetsDirective ( ArrayRef< const MCSymbol * > Targets)
overridevirtual

Emit the list of branch targets a brx.idx may jump to.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 187 of file NVPTXTargetStreamer.cpp.

References llvm::MCContext::getAsmInfo(), llvm::MCStreamer::getContext(), llvm::MCTargetStreamer::getStreamer(), and llvm::interleave().

◆ emitEmptySectionDirective()

void NVPTXAsmTargetStreamer::emitEmptySectionDirective ( StringRef Name)
overridevirtual

Emit a section with an empty body.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 235 of file NVPTXTargetStreamer.cpp.

◆ emitLocalDirective()

void NVPTXAsmTargetStreamer::emitLocalDirective ( Align Alignment,
const MCSymbol * Name,
uint64_t Size )
overridevirtual

Declare Size bytes of local (stack) memory named Name.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 212 of file NVPTXTargetStreamer.cpp.

References llvm::MCContext::getAsmInfo(), llvm::MCStreamer::getContext(), llvm::MCTargetStreamer::getStreamer(), Size, and llvm::Align::value().

◆ emitPragmaDirective()

void NVPTXAsmTargetStreamer::emitPragmaDirective ( StringRef Pragma)
overridevirtual

Emit a pragma governing the code that follows it.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 231 of file NVPTXTargetStreamer.cpp.

◆ emitRegDirective()

void NVPTXAsmTargetStreamer::emitRegDirective ( unsigned SizeInBits,
StringRef Name,
std::optional< unsigned > Count )
overridevirtual

Declare a register SizeInBits wide.

Count declares a numbered bank of that many registers sharing Name as their prefix, rather than a single register named Name.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 197 of file NVPTXTargetStreamer.cpp.

References llvm::Count.

◆ emitTargetDirective()

void NVPTXAsmTargetStreamer::emitTargetDirective ( StringRef Target,
bool TexModeIndependent,
bool HasDebug )
overridevirtual

Emit architecture and platform target.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 171 of file NVPTXTargetStreamer.cpp.

◆ emitVersionDirective()

void NVPTXAsmTargetStreamer::emitVersionDirective ( unsigned PTXVersion)
overridevirtual

Emit the PTX ISA version number.

Reimplemented from llvm::NVPTXTargetStreamer.

Definition at line 167 of file NVPTXTargetStreamer.cpp.


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