分享方式:


.PUSHREG

UWOP_PUSH_NONVOL使用序言中的目前位移,為指定的緩存器編號產生回溯程式代碼專案。

語法

.PUSHREG 快取器

備註

.PUSHREG 可ml64.exe使用者指定框架函式回溯的方式,而且只能在序言中允許,該序言會從 PROC FRAME 宣告延伸至 。ENDPROLOG 指示詞。 這些指示詞不會產生程序代碼;它們只會產生 .xdata.pdata.PUSHREG 前面應該有實際實作要解除之動作的指示。 最好包裝回溯指示詞,以及它們打算在巨集中回溯的程序代碼,以確保合約。

register 可能是下列其中一項:
RAX |RCX |RDX |RBX |RDI |RSI |RBP |R8 |R9 |R10 |R11 |R12 |R13 |R14 |R15.

如需詳細資訊,請參閱適用於 x64 的 MASM(ml64.exe)。

範例

描述

下列範例示範如何推送非揮發性緩存器。

程式碼

; ml64 ex1.asm /link /entry:Example1 /SUBSYSTEM:CONSOLE
_text SEGMENT
Example1 PROC FRAME
   push r10
.pushreg r10
   push r15
.pushreg r15
   push rbx
.pushreg rbx
   push rsi
.pushreg rsi
.endprolog
   ; rest of function ...
   ret
Example1 ENDP
_text ENDS
END

另請參閱

指示詞參考
MASM BNF 文法