.ALLOCSTACK
Génère un UWOP_ALLOC_SMALL ou un UWOP_ALLOC_LARGE avec la taille spécifiée pour le décalage actuel dans le prologue.
Syntaxe
. Taille ALLOCSTACK
Notes
MASM choisit l’encodage le plus efficace pour une taille donnée.
. ALLOCSTACK permet ml64.exe utilisateurs de spécifier comment une fonction frame se déroule et n’est autorisée que dans le prologue, qui s’étend de la déclaration PROC FRAME à l’objet . Directive ENDPROLOG . Ces directives ne génèrent pas de code ; ils génèrent .xdata
uniquement et .pdata
. . ALLOCSTACK doit être précédé d’instructions qui implémentent réellement les actions à annuler. Il est recommandé d’encapsuler les directives de déroulement et le code qu’ils sont destinés à dérouler dans une macro pour garantir l’accord.
L’opérande de taille doit être un multiple de 8.
Pour plus d’informations, consultez MASM pour x64 (ml64.exe).
Exemple
L’exemple suivant montre comment spécifier un gestionnaire de déroulement/exception :
; 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
Voir aussi
Informations de référence sur les directives
Grammaire MASM BNF