.PUSHFRAME
Generates a UWOP_PUSH_MACHFRAME
unwind code entry. If the optional CODE keyword is specified, the unwind code entry is given a modifier of 1. Otherwise the modifier is 0.
Syntax
.PUSHFRAME ⟦CODE⟧;;
Remarks
.PUSHFRAME allows ml64.exe users to specify how a frame function unwinds. It's only allowed within the prologue, which extends from the PROC FRAME declaration to the .ENDPROLOG directive. These directives don't generate code; they only generate .xdata
and .pdata
. .PUSHFRAME should be preceded by instructions that actually implement the actions to be unwound. It's a good practice to wrap both the unwind directives and the code they're meant to unwind in a macro to ensure agreement.
For more information, see MASM for x64 (ml64.exe).