.ALLOCSTACK

为序言中的当前偏移量生成指定大小的 UWOP_ALLOC_SMALLUWOP_ALLOC_LARGE

语法

.ALLOCSTACK大小

备注

MASM 将为给定大小选择最有效的编码。

.ALLOCSTACK 允许 ml64.exe 用户指定框架函数的展开方式,并且仅允许在序言内进行扩展,这种情况下,它从 过程 框架声明扩展到 。ENDPROLOG 指令。 这些指令不生成代码;它们仅生成 .xdata.pdata.ALLOCSTACK 后面应是实际实现要展开的操作的说明。 最好将展开指令和它们要展开的代码封装在一个宏中,以确保协议。

size 操作数必须是 8 的倍数。

有关详细信息,请参阅 MASM for x64 (ml64.exe)

示例

下面的示例演示如何指定展开/异常处理程序:

; ml64 ex3.asm /link /entry:Example1  /SUBSYSTEM:Console
text SEGMENT
PUBLIC Example3
PUBLIC Example3_UW
Example3_UW PROC NEAR
   ; exception/unwind handler body

   ret 0

Example3_UW ENDP

Example3 PROC FRAME : Example3_UW

   sub rsp, 16
.allocstack 16

.endprolog

   ; function body
    add rsp, 16
   ret 0

Example3 ENDP
text ENDS
END

另请参阅

指令参考
MASM BNF 语法