LLVM 20.0.0git
Public Member Functions | Public Attributes | List of all members
llvm::BufferByteStreamer Class Referencefinal

#include "CodeGen/AsmPrinter/ByteStreamer.h"

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

Public Member Functions

 BufferByteStreamer (SmallVectorImpl< char > &Buffer, std::vector< std::string > &Comments, bool GenerateComments)
 
void emitInt8 (uint8_t Byte, const Twine &Comment) override
 
void emitSLEB128 (uint64_t DWord, const Twine &Comment) override
 
void emitULEB128 (uint64_t DWord, const Twine &Comment, unsigned PadTo) override
 
unsigned emitDIERef (const DIE &D) override
 
virtual void emitInt8 (uint8_t Byte, const Twine &Comment="")=0
 
virtual void emitSLEB128 (uint64_t DWord, const Twine &Comment="")=0
 
virtual void emitULEB128 (uint64_t DWord, const Twine &Comment="", unsigned PadTo=0)=0
 
virtual unsigned emitDIERef (const DIE &D)=0
 

Public Attributes

const bool GenerateComments
 Only verbose textual output needs comments.
 

Additional Inherited Members

- Protected Member Functions inherited from llvm::ByteStreamer
 ~ByteStreamer ()=default
 
 ByteStreamer (const ByteStreamer &)=default
 
 ByteStreamer ()=default
 

Detailed Description

Definition at line 90 of file ByteStreamer.h.

Constructor & Destructor Documentation

◆ BufferByteStreamer()

llvm::BufferByteStreamer::BufferByteStreamer ( SmallVectorImpl< char > &  Buffer,
std::vector< std::string > &  Comments,
bool  GenerateComments 
)
inline

Definition at line 101 of file ByteStreamer.h.

Member Function Documentation

◆ emitDIERef()

unsigned llvm::BufferByteStreamer::emitDIERef ( const DIE D)
inlineoverridevirtual

Implements llvm::ByteStreamer.

Definition at line 134 of file ByteStreamer.h.

References assert(), D, emitULEB128(), llvm::Offset, and ULEB128PadSize.

◆ emitInt8()

void llvm::BufferByteStreamer::emitInt8 ( uint8_t  Byte,
const Twine Comment 
)
inlineoverridevirtual

◆ emitSLEB128()

void llvm::BufferByteStreamer::emitSLEB128 ( uint64_t  DWord,
const Twine Comment 
)
inlineoverridevirtual

Implements llvm::ByteStreamer.

Definition at line 110 of file ByteStreamer.h.

References llvm::encodeSLEB128(), GenerateComments, and llvm::Length.

◆ emitULEB128()

void llvm::BufferByteStreamer::emitULEB128 ( uint64_t  DWord,
const Twine Comment,
unsigned  PadTo 
)
inlineoverridevirtual

Implements llvm::ByteStreamer.

Definition at line 122 of file ByteStreamer.h.

References llvm::encodeULEB128(), GenerateComments, and llvm::Length.

Referenced by emitDIERef().

Member Data Documentation

◆ GenerateComments

const bool llvm::BufferByteStreamer::GenerateComments

Only verbose textual output needs comments.

This will be set to true for that case, and false otherwise. If false, comments passed in to the emit methods will be ignored.

Definition at line 99 of file ByteStreamer.h.

Referenced by emitInt8(), emitSLEB128(), and emitULEB128().


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