dmd.backend.dwarfdbginf

Compiler implementation of the D programming language.

Members

Functions

cv_func
void cv_func(Funcsym* s)

Write out symbol table for current function.

cv_outlist
void cv_outlist()

Write out any deferred symbols.

cv_outsym
void cv_outsym(Symbol* s)

Write out symbol table for current function.

doUnwindEhFrame
bool doUnwindEhFrame()

Determine if generating a eh_frame with full unwinding information. This decision is done on a per-function basis.

dwarf_CFA_args_size
void dwarf_CFA_args_size(size_t sz)

Set total size of arguments pushed on the stack.

dwarf_CFA_offset
void dwarf_CFA_offset(int reg, int offset)

Set reg to be at offset from frame register.

dwarf_CFA_set_loc
void dwarf_CFA_set_loc(uint location)

Set the location, i.e. the offset from the start of the function. It must always be greater than the current location.

dwarf_CFA_set_reg_offset
void dwarf_CFA_set_reg_offset(int reg, int offset)

Set the frame register, and its offset.

dwarf_except_gentables
void dwarf_except_gentables(Funcsym* sfunc, uint startoffset, uint retoffset)

Write Dwarf-style exception tables.

dwarf_func_start
void dwarf_func_start(Symbol* sfunc)

Start of code gen for function.

dwarf_func_term
void dwarf_func_term(Symbol* sfunc)

End of code gen for function.

dwarf_line_addfile
int dwarf_line_addfile(const(char)* filename)
int dwarf_line_addfile(const(char)[] filename)

Add a file to the .debug_line header

dwarf_regno
int dwarf_regno(int reg)

Convert CPU register number to Dwarf register number.

dwarf_termfile
void dwarf_termfile()

Finish writing Dwarf debug info to object file.

writeDebugFrameFDE
void writeDebugFrameFDE(IDXSEC dfseg, Symbol* sfunc)

Generate function's Frame Description Entry into .debug_frame

writeDebugFrameHeader
void writeDebugFrameHeader(Outbuffer* buf)

Append .debug_frame header to buf.

writeEhFrameFDE
void writeEhFrameFDE(IDXSEC dfseg, Symbol* sfunc, bool ehunwind, uint CIE_offset)

Append function's FDE (Frame Description Entry) to .eh_frame

Structs

CFA_reg
struct CFA_reg

DWARF DEBUG OUTPUT

Meta