class DebugLocDwarfExpression

Declaration

class DebugLocDwarfExpression : public DwarfExpression { /* full declaration omitted */ };

Description

DwarfExpression implementation for .debug_loc entries.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:368

Inherits from: DwarfExpression

Member Variables

private std::unique_ptr<TempBuffer> TmpBuf
private llvm::BufferByteStreamer& OutBS
private bool IsBuffering = false

Inherited from DwarfExpression:

protected IsEmittingEntryValue = false
protected CU
protected DwarfRegs
protected OffsetInBits = 0
protected SubRegisterSizeInBits
protected SubRegisterOffsetInBits
protected LocationKind
protected SavedLocationKind
protected LocationFlags
protected DwarfVersion
public TagOffset

Method Overview

Inherited from DwarfExpression:

Methods

DebugLocDwarfExpression(
    unsigned int DwarfVersion,
    llvm::BufferByteStreamer& BS,
    llvm::DwarfCompileUnit& CU)

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:400

Parameters

unsigned int DwarfVersion
llvm::BufferByteStreamer& BS
llvm::DwarfCompileUnit& CU

void commitTemporaryBuffer()

Description

Commit the data stored in the temporary buffer to the main output.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:394

void disableTemporaryBuffer()

Description

Disable emission to the temporary buffer. This does not commit data in the temporary buffer to the main output.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:392

void emitBaseTypeRef(uint64_t Idx)

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:389

Parameters

uint64_t Idx

void emitData1(uint8_t Value)

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:388

Parameters

uint8_t Value

void emitOp(uint8_t Op,
            const char* Comment = nullptr)

Description

Output a dwarf operand and an optional assembler comment.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:385

Parameters

uint8_t Op
const char* Comment = nullptr

void emitSigned(int64_t Value)

Description

Emit a raw signed value.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:386

Parameters

int64_t Value

void emitUnsigned(uint64_t Value)

Description

Emit a raw unsigned value.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:387

Parameters

uint64_t Value

void enableTemporaryBuffer()

Description

Start emitting data to the temporary buffer. The data stored in the temporary buffer can be committed to the main output using commitTemporaryBuffer().

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:391

llvm::ByteStreamer& getActiveStreamer()

Description

Return the byte streamer that currently is being emitted to.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:383

unsigned int getTemporaryBufferSize()

Description

Return the emitted size, in number of bytes, for the data stored in the temporary buffer.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:393

bool isFrameRegister(
    const llvm::TargetRegisterInfo& TRI,
    llvm::Register MachineReg)

Description

Return whether the given machine register is the frame register in the current function.

Declared at: llvm/lib/CodeGen/AsmPrinter/DwarfExpression.h:396

Parameters

const llvm::TargetRegisterInfo& TRI
llvm::Register MachineReg