Bagikan melalui


.ALLOCSTACK

Menghasilkan UWOP_ALLOC_SMALL atau UWOP_ALLOC_LARGE dengan ukuran yang ditentukan untuk offset saat ini dalam prolog.

Sintaks

. Ukuran ALLOCSTACK

Keterangan

MASM akan memilih pengodean yang paling efisien untuk ukuran tertentu.

. ALLOCSTACK memungkinkan pengguna ml64.exe untuk menentukan bagaimana fungsi bingkai melepas lelah dan hanya diizinkan dalam prolog, yang meluas dari deklarasi PROC FRAME ke . Direktif ENDPROLOG . Arahan ini tidak menghasilkan kode; mereka hanya menghasilkan .xdata dan .pdata. . ALLOCSTACK harus didahului oleh instruksi yang benar-benar mengimplementasikan tindakan yang akan dibatalkan. Ini adalah praktik yang baik untuk membungkus arahan unwind dan kode yang dimaksudkan untuk bersantai dalam makro untuk memastikan perjanjian.

Operand ukuran harus kelipatan 8.

Untuk informasi selengkapnya, lihat MASM untuk x64 (ml64.exe).

Sampel

Contoh berikut menunjukkan cara menentukan handler unwind/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

Baca juga

Referensi Arahan
Tata Bahasa MASM BNF