dmd.backend.pdata

Compiler implementation of the D programming language.

Members

Enums

UNW_FLAG_EHANDLER
anonymousenum UNW_FLAG_EHANDLER
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
UWOP
enum UWOP

Creates an instance of struct UNWIND_INFO: http://msdn.microsoft.com/en-US/library/ddssxxy8(v=vs.80).aspx

Functions

setUnwindCode
ushort setUnwindCode(ubyte CodeOffset, ubyte UnwindOp, ubyte OpInfo)
Undocumented in source. Be warned that the author may not have intended to support it.
symbol_iscomdat3
bool symbol_iscomdat3(Symbol* s)
Undocumented in source. Be warned that the author may not have intended to support it.
unwind_data
dt_t* unwind_data()
Undocumented in source. Be warned that the author may not have intended to support it.
win64_pdata
void win64_pdata(Symbol* sf)

The .pdata section is used on Win64 by the VS debugger and dbghelp to get information to walk the stack and unwind exceptions. Absent it, it is assumed to be a "leaf function" where RSP is the return address. Creates an instance of struct RUNTIME_FUNCTION: http://msdn.microsoft.com/en-US/library/ft9x1kdx(v=vs.80).aspx

win64_unwind
Symbol* win64_unwind(Symbol* sf)

Unwind data symbol goes in the .xdata section. Input: sf function to generate unwind data for

Manifest constants

ALLOCA_LIMIT
enum ALLOCA_LIMIT;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Structs

UNWIND_INFO
struct UNWIND_INFO
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Unions

UNWIND_CODE
union UNWIND_CODE
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Meta