Skip to main content

Module types

Module types 

Source

Structs§

Config
Config struct read by the asm trampoline. Layout must match src/asm/{msvc,gnu}/synthetic.asm and desync.asm byte-for-byte. Field reordering will corrupt argument passing — do not touch.
ImageDataDirectory
IMAGE_DATA_DIRECTORY — VA + size pair used by the optional header.
ImageRuntimeFunction
IMAGE_RUNTIME_FUNCTION_ENTRY — one entry of the .pdata exception table.
UnwindCode0
UnwindFrameInfo
UnwindInfo
UNWIND_INFO header at the front of every function’s unwind record.
UnwindVersionFlags

Enums§

Registers
x86_64 general-purpose register encoding used by unwind codes.
UnwindOpCode
x64 unwind operation codes (subset we care about for stack-size calculation). MS docs: learn.microsoft.com/cpp/build/exception-handling-x64

Constants§

IMAGE_DIRECTORY_ENTRY_EXCEPTION
IMAGE_DIRECTORY_ENTRY_EXCEPTION — index into the optional header’s DataDirectory[] where the .pdata RUNTIME_FUNCTION table lives.
UNW_FLAG_CHAININFO
Indicates chained unwind information is present.
UNW_FLAG_EHANDLER
Indicates the presence of an exception handler in the function.

Unions§

UnwindCode
One unwind code slot. The full union: either a packed 16-bit slot (CodeOffset/UnwindOp/OpInfo) or a raw FrameOffset for following slots.
UnwindInfo0
Optional Exception/ChainInfo slot in UNWIND_INFO.