"Fossies" - the Fresh Open Source Software Archive

Member "dmd2/src/dmd/dmd/backend/dwarf.d" (20 Nov 2020, 1131 Bytes) of package /linux/misc/dmd.2.094.2.linux.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) D source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 /**
    2  * Definitions for DWARF debug infos (v3)
    3  *
    4  * See_Also: $(LINK2 http://dwarfstd.org/doc/Dwarf3.pdf, DWARF standard)
    5  * Source: $(DMDSRC backend/_dwarf.d)
    6  */
    7 
    8 module dmd.backend.dwarf;
    9 
   10 import dmd.backend.cc;
   11 import dmd.backend.cdef;
   12 import dmd.backend.outbuf;
   13 import dmd.backend.type;
   14 
   15 extern (C++):
   16 
   17 nothrow:
   18 
   19 enum DWARF_VERSION = 3;
   20 
   21 void dwarf_initfile(const(char) *filename);
   22 void dwarf_termfile();
   23 void dwarf_initmodule(const(char) *filename, const(char) *modulename);
   24 void dwarf_termmodule();
   25 void dwarf_func_start(Symbol *sfunc);
   26 void dwarf_func_term(Symbol *sfunc);
   27 uint dwarf_typidx(type *t);
   28 uint dwarf_abbrev_code(ubyte *data, size_t nbytes);
   29 
   30 int dwarf_regno(int reg);
   31 
   32 void dwarf_addrel(int seg, targ_size_t offset, int targseg, targ_size_t val = 0);
   33 int dwarf_reftoident(int seg, targ_size_t offset, Symbol *s, targ_size_t val);
   34 void dwarf_except_gentables(Funcsym *sfunc, uint startoffset, uint retoffset);
   35 void genDwarfEh(Funcsym *sfunc, int seg, Outbuffer *et, bool scancode, uint startoffset, uint retoffset);
   36 int dwarf_eh_frame_fixup(int seg, targ_size_t offset, Symbol *s, targ_size_t val, Symbol *seh);