struct MCDwarfLineTableHeader

Declaration

struct MCDwarfLineTableHeader { /* full declaration omitted */ };

Declared at: llvm/include/llvm/MC/MCDwarf.h:257

Member Variables

public llvm::MCSymbol* Label = nullptr
public SmallVector<std::string, 3> MCDwarfDirs
public SmallVector<llvm::MCDwarfFile, 3> MCDwarfFiles
public StringMap<unsigned int> SourceIdMap
public std::string CompilationDir
public llvm::MCDwarfFile RootFile
public bool HasSource = false
private bool HasAllMD5 = true
private bool HasAnyMD5 = false

Method Overview

  • public std::pair<MCSymbol *, MCSymbol *> Emit(llvm::MCStreamer * MCOS, llvm::MCDwarfLineTableParams Params, Optional<llvm::MCDwarfLineStr> & LineStr) const
  • public std::pair<MCSymbol *, MCSymbol *> Emit(llvm::MCStreamer * MCOS, llvm::MCDwarfLineTableParams Params, ArrayRef<char> SpecialOpcodeLengths, Optional<llvm::MCDwarfLineStr> & LineStr) const
  • public MCDwarfLineTableHeader()
  • private void emitV2FileDirTables(llvm::MCStreamer * MCOS) const
  • private void emitV5FileDirTables(llvm::MCStreamer * MCOS, Optional<llvm::MCDwarfLineStr> & LineStr) const
  • public bool isMD5UsageConsistent() const
  • public void resetFileTable()
  • public void resetMD5Usage()
  • public void setRootFile(llvm::StringRef Directory, llvm::StringRef FileName, Optional<MD5::MD5Result> Checksum, Optional<llvm::StringRef> Source)
  • public void trackMD5Usage(bool MD5Used)
  • public Expected<unsigned int> tryGetFile(llvm::StringRef & Directory, llvm::StringRef & FileName, Optional<MD5::MD5Result> Checksum, Optional<llvm::StringRef> Source, uint16_t DwarfVersion, unsigned int FileNumber = 0)

Methods

std::pair<MCSymbol*, MCSymbol*> Emit(
    llvm::MCStreamer* MCOS,
    llvm::MCDwarfLineTableParams Params,
    Optional<llvm::MCDwarfLineStr>& LineStr) const

Declared at: llvm/include/llvm/MC/MCDwarf.h:278

Parameters

llvm::MCStreamer* MCOS
llvm::MCDwarfLineTableParams Params
Optional<llvm::MCDwarfLineStr>& LineStr

std::pair<MCSymbol*, MCSymbol*> Emit(
    llvm::MCStreamer* MCOS,
    llvm::MCDwarfLineTableParams Params,
    ArrayRef<char> SpecialOpcodeLengths,
    Optional<llvm::MCDwarfLineStr>& LineStr) const

Declared at: llvm/include/llvm/MC/MCDwarf.h:281

Parameters

llvm::MCStreamer* MCOS
llvm::MCDwarfLineTableParams Params
ArrayRef<char> SpecialOpcodeLengths
Optional<llvm::MCDwarfLineStr>& LineStr

MCDwarfLineTableHeader()

Declared at: llvm/include/llvm/MC/MCDwarf.h:270

void emitV2FileDirTables(
    llvm::MCStreamer* MCOS) const

Declared at: llvm/include/llvm/MC/MCDwarf.h:317

Parameters

llvm::MCStreamer* MCOS

void emitV5FileDirTables(
    llvm::MCStreamer* MCOS,
    Optional<llvm::MCDwarfLineStr>& LineStr) const

Declared at: llvm/include/llvm/MC/MCDwarf.h:318

Parameters

llvm::MCStreamer* MCOS
Optional<llvm::MCDwarfLineStr>& LineStr

bool isMD5UsageConsistent() const

Declared at: llvm/include/llvm/MC/MCDwarf.h:292

void resetFileTable()

Declared at: llvm/include/llvm/MC/MCDwarf.h:308

void resetMD5Usage()

Declared at: llvm/include/llvm/MC/MCDwarf.h:284

void setRootFile(
    llvm::StringRef Directory,
    llvm::StringRef FileName,
    Optional<MD5::MD5Result> Checksum,
    Optional<llvm::StringRef> Source)

Declared at: llvm/include/llvm/MC/MCDwarf.h:296

Parameters

llvm::StringRef Directory
llvm::StringRef FileName
Optional<MD5::MD5Result> Checksum
Optional<llvm::StringRef> Source

void trackMD5Usage(bool MD5Used)

Declared at: llvm/include/llvm/MC/MCDwarf.h:288

Parameters

bool MD5Used

Expected<unsigned int> tryGetFile(
    llvm::StringRef& Directory,
    llvm::StringRef& FileName,
    Optional<MD5::MD5Result> Checksum,
    Optional<llvm::StringRef> Source,
    uint16_t DwarfVersion,
    unsigned int FileNumber = 0)

Declared at: llvm/include/llvm/MC/MCDwarf.h:272

Parameters

llvm::StringRef& Directory
llvm::StringRef& FileName
Optional<MD5::MD5Result> Checksum
Optional<llvm::StringRef> Source
uint16_t DwarfVersion
unsigned int FileNumber = 0