dmd.backend.dwarf

Definitions for DWARF debug infos (v3 to v5)

Members

Functions

dwarf_abbrev_code (from dmd.backend.dwarfdbginf)
uint dwarf_abbrev_code(const(ubyte)* data, size_t nbytes) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;
Undocumented in source.
dwarf_addrel (from dmd.backend.dwarfdbginf)
void dwarf_addrel(int seg, targ_size_t offset, int targseg, targ_size_t val) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;
Undocumented in source.
dwarf_eh_frame_fixup (from dmd.backend.machobj)
int dwarf_eh_frame_fixup(int dfseg, targ_size_t offset, Symbol* s, targ_size_t val, Symbol* fdesym) via public import dmd.backend.machobj : mach_dwarf_reftoident, dwarf_eh_frame_fixup;

Generate LSDA and PC_Begin fixups in the __eh_frame segment encoded as DW_EH_PE_pcrel|ptr. 64 bits LSDA [0] address x0071 symbolnum 6 pcrel 0 length 3 extern 1 type 5 RELOC_SUBTRACTOR __Z3foov.eh [1] address x0071 symbolnum 1 pcrel 0 length 3 extern 1 type 0 RELOC_UNSIGNED GCC_except_table2

dwarf_func_start (from dmd.backend.dwarfdbginf)
void dwarf_func_start(Symbol* sfunc) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;

Start of code gen for function.

dwarf_func_term (from dmd.backend.dwarfdbginf)
void dwarf_func_term(Symbol* sfunc) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;

End of code gen for function.

dwarf_initfile (from dmd.backend.dwarfdbginf)
void dwarf_initfile(const(char)[] filename) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;
Undocumented in source.
dwarf_initmodule (from dmd.backend.dwarfdbginf)
void dwarf_initmodule(const(char)[] filename, const(char)[] modname) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;
Undocumented in source.
dwarf_regno (from dmd.backend.dwarfdbginf)
int dwarf_regno(int reg) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;

Convert CPU register number to Dwarf register number.

dwarf_termfile (from dmd.backend.dwarfdbginf)
void dwarf_termfile() via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;

Finish writing Dwarf debug info to object file.

dwarf_termmodule (from dmd.backend.dwarfdbginf)
void dwarf_termmodule() via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;
Undocumented in source.
dwarf_typidx (from dmd.backend.dwarfdbginf)
uint dwarf_typidx(type* t) via public import dmd.backend.dwarfdbginf : dwarf_initfile, dwarf_termfile, dwarf_initmodule, dwarf_termmodule, dwarf_func_start, dwarf_func_term, dwarf_typidx, dwarf_abbrev_code, dwarf_regno, dwarf_addrel;
Undocumented in source.
elf_dwarf_reftoident (from dmd.backend.elfobj)
int elf_dwarf_reftoident(int seg, targ_size_t offset, Symbol* s, targ_size_t val) via public import dmd.backend.elfobj : elf_dwarf_reftoident;

Generate fixup specific to .eh_frame and .gcc_except_table sections.

genDwarfEh (from dmd.backend.dwarfeh)
void genDwarfEh(Funcsym* sfunc, int seg, OutBuffer* et, bool scancode, uint startoffset, uint retoffset, DwEhTable deh) via public import dmd.backend.dwarfeh : genDwarfEh;

Generate .gcc_except_table, aka LS

mach_dwarf_reftoident (from dmd.backend.machobj)
int mach_dwarf_reftoident(int seg, targ_size_t offset, Symbol* s, targ_size_t val) via public import dmd.backend.machobj : mach_dwarf_reftoident, dwarf_eh_frame_fixup;

Generate fixup specific to .eh_frame and .gcc_except_table sections.

See Also

Meta

Source

See Source File
$(DMDSRC backend/_dwarf.d)