Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Genereert een pop-codevermelding met twee registraties voor het opgegeven registerpaar met behulp van de huidige offset in de epiloog.
Syntax
. POP2REGregister1, register2
Parameters
register1
Het eerste register om te popen. Moet een 64-bits 64-bits register voor algemeen gebruik zijn.
register2
Het tweede register om te popen. Moet een 64-bits 64-bits register voor algemeen gebruik zijn.
register1 en register2 kunnen elk een van de volgende zijn:
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.
Opmerkingen
Important
Deze richtlijn is experimenteel en kan worden gewijzigd. Schakel versie 3 van de rust in met ml64.exe /unwindv3.
- . POP2REG is alleen geldig in afwikkelversie 3. Het is de epiloog-tegenhanger voor . PUSH2REG.
- . POP2REG is alleen toegestaan binnen een epilooggebied, tussen . BEGINEPILOG en . ENDEPILOG.
- Deze instructies genereren een ontspannen metagegevens (
.xdataen.pdatasecties), maar produceren geen uitvoerbare code. - In Relax versie 3, . POP2REG moet worden weergegeven voordat de instructie waarmee de actie daadwerkelijk wordt geïmplementeerd, wordt uitgevoerd.
- In Relax versie 3 zijn epiloogrichtlijnen verplicht voor het afwikkelen van codegeneratie van epiloog. Er worden geen epiloog-afwikkelcodes verzonden zonder
.BEGINEPILOG/.ENDEPILOGeen paar. - Om de overeenkomst te garanderen, verpakt u zowel de richtlijnen voor afwikkelen als de code die ze zijn bedoeld om in een macro tot rust te komen.
Als register1 en register2 opeenvolgend en in toenemende volgorde zijn, verzendt MASM een WOD_PUSH_CONSECUTIVE_2 afwikkelcode. Anders verzendt MASM een WOD_PUSH2 afwikkelcode.
Note
In Relax versie 1 wordt de instructie weergegeven na de bijbehorende instructie. In Relax versie 3 wordt de instructie weergegeven vóór de instructie.
Example
; ml64 /unwindv3 ex1.asm /link /entry:Example1 /SUBSYSTEM:CONSOLE
_text SEGMENT
Example1 PROC FRAME
.push2reg rbx, rsi
push2 rbx, rsi
.push2reg r10, r11
push2 r10, r11
.endprolog
; rest of function ...
.beginepilog
.pop2reg r10, r11
pop2 r10, r11
.pop2reg rbx, rsi
pop2 rbx, rsi
.endepilog
ret
Example1 ENDP
_text ENDS
END
Zie ook
x64 Versie 3 tot rust laten komen (experimenteel)
Naslaginformatie over richtlijnen
. PUSH2REG
. POPREG
. BEGINEPILOG
MASM BNF-grammatica