You copied the Doc URL to your clipboard.

21.31 FRAME POP

The FRAME POP directive informs the assembler when the callee reloads registers.

Syntax

There are the following alternative syntaxes for FRAME POP:

FRAME POP {reglist}

FRAME POP {reglist},n

FRAME POP n

where:

reglist

is a list of registers restored to the values theyhad on entry to the function. There must be at least one registerin the list.

n

is the number of bytes that the stack pointer moves.

Usage

FRAME POP is equivalent to a FRAMEADDRESS and a FRAME RESTORE directive.You can use it when a single instruction loads registers and altersthe stack pointer.

You must use FRAME POP immediatelyafter the instruction it refers to.

You can only use it within functions with FUNCTION and ENDFUNC or PROC and ENDP directives. You do not have to do this after the last instruction in a function.

If n is not specifiedor is zero, the assembler calculates the new offset for the canonicalframe address from {reglist}. Itassumes that:

  • Each ARM register popped occupies four bytes on the stack.

  • Each VFP single-precision register popped occupies four bytes on the stack, plus an extra four-byte word for each list.

  • Each VFP double-precision register popped occupies eight bytes on the stack, plus an extra four-byte word for each list.

Was this page helpful? Yes No