. ENDEPILOG

Oznacza koniec epilogu unwind region. Ta dyrektywa nie emituje Windows odwijanego kodu danych (WOD).

Syntax

. ENDEPILOG

Remarks

Ważna

Niniejsza dyrektywa jest eksperymentalna i podlega zmianie. Włącz opcję Odwijaj wersję 3 przy użyciu polecenia ml64.exe /unwindv3.

. FUNKCJA ENDEPILOG jest prawidłowa tylko w wersji 3.

  • Oznacza to koniec regionu epilogu rozpoczętego przez . BEGINEPILOG.
  • Te dyrektywy generują metadane odwiju (.xdata i .pdata sekcje), ale nie tworzą kodu wykonywalnego.
  • Epilogues musi zawierać co najmniej jedną dyrektywę.
  • Dyrektywy epilogu są obowiązkowe dla epilogu odwijać generowanie kodu. Nie są emitowane żadne kody odwijaczające .BEGINEPILOG/.ENDEPILOG epilogu bez pary.
  • Jest to błąd podczas używania dyrektyw epilogu poza regionem między . BEGINEPILOG i . ENDEPILOG.

Note

W wersji 1 unwind dyrektywa pojawia się po odpowiedniej instrukcji. W wersji 3 unwind dyrektywa pojawia się przed instrukcją.

Example

; ml64 /unwindv3 ex1.asm /link /entry:Example1 /SUBSYSTEM:CONSOLE
_text SEGMENT
Example1 PROC FRAME
   .allocstack 16
   sub rsp, 16
.endprolog
   ; function body
   .beginepilog
   .freestack 16
   add rsp, 16
   .endepilog
   ret
Example1 ENDP
_text ENDS
END

Zobacz także

x64 Unwind, wersja 3 (eksperymentalna)
Odwołanie do dyrektyw
. BEGINEPILOG
. ENDPROLOG
Gramatyka MASM BNF