Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Epilogue'daki geçerli uzaklığı kullanarak belirtilen yazmaç için bir WOD_PUSH geri sarma kodu girişi oluşturur.
Syntax
. POPREG kaydı
Parametreler
Kayıt yaptır
Açılacak kayıt. Genel amaçlı bir 64 bit yazmaç olmalıdır.
Remarks
Important
Bu yönerge deneyseldir ve değiştirilebilir. ml64.exeseçeneğini kullanarak /unwindv3 Sürüm 3'i Geri Al'a etkinleştirin.
.POPREG yalnızca Geri Sarma Sürüm 3'te geçerlidir. Bu, 'nin en önemli muadili . PUSHREG.
.POPREG arasında yalnızca en son bir bölgede izin verilir . BEGINEPILOG ve . ENDEPILOG. Bu yönergeler geri sarma meta verileri (.xdata ve .pdata bölümleri) oluşturur ancak yürütülebilir kod üretmez. Sürüm 3'te, .POPREG kayıt geri yüklemesini pop uygulayan yönergeden önce görünmelidir. Sözleşmeyi güvence altına almak için hem unwind yönergelerini hem de bir makroda geri sarmalamaları gereken kodu sarmalayın.
register şu durumlardan biri olabilir:
RAX, RCX, RDX, RBX, RDI, RSI, RBP, R8, R9, R10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24, R25, R26, R27, R28, R29, R30, R31
Unwind Sürüm 3'te, epilogue unwind kod oluşturma için epilog yönergeleri zorunlu hale geldi. Derleyici, bir çift olmadan .BEGINEPILOG/.ENDEPILOG epilogue unwind kodları yaymaz.
Note
Sürüm 1'i Geri Al bölümünde yönerge ilgili yönergeden sonra görünür. Sürüm 3'te yönerge yönergeden önce görünür.
unwindv3 örneği
; ml64 /unwindv3 ex1.asm /link /entry:Example1 /SUBSYSTEM:CONSOLE
_text SEGMENT
Example1 PROC FRAME
.pushreg rbx
push rbx
.pushreg rsi
push rsi
.endprolog
; rest of function ...
.beginepilog
.popreg rsi
pop rsi
.popreg rbx
pop rbx
.endepilog
ret
Example1 ENDP
_text ENDS
END
Ayrıca bakınız
x64 Sürüm 3'i geri sarma (deneysel)
Yönergeler Başvurusu
. PUSHREG
. POP2REG
. BEGINEPILOG
MASM BNF Dil Bilgisi