7.5.2. FRAME POP

FRAME POP 지시어를 사용하여 호출 수신자가 레지스터를 다시 로드할 때 어셈블러에 이를 알립니다. 이 지시어는 FUNCTIONENDFUNC 또는 PROCENDP 지시어가 있는 함수 내에서만 사용할 수 있습니다.

함수의 마지막 명령어 뒤에서는 이렇게 하지 않아도 됩니다.

구문

FRAME POP의 대체 구문에는 다음과 같은 세 가지가 있습니다.

FRAME POP {reglist}
FRAME POP {reglist},n
FRAME POP n

인수 설명:

reglist

함수 진입점에 있는 값으로 복원할 레지스터 목록입니다. 이 목록에는 최소한 하나 이상의 레지스터가 있어야 합니다.

n

스택 포인터가 이동하는 바이트 수입니다.

사용법

FRAME POPFRAME ADDRESS 지시어와 FRAME RESTORE 지시어를 모두 사용하는 것과 같습니다. 이 지시어는 단일 명령어가 레지스터를 로드하고 스택 포인터를 변경할 때 사용할 수 있습니다.

FRAME POP은 해당 지시어가 참조하는 명령어 바로 다음에 사용해야 합니다.

n이 지정되지 않거나 0일 경우 어셈블러는 {reglist}를 기준으로 표준 프레임 주소의 새 오프셋을 계산합니다. 어셈블러는 다음을 가정합니다.

  • 팝된 각 ARM 레지스터가 스택에서 4바이트를 차지합니다.

  • 팝된 각 VFP 단정밀도 레지스터가 스택에서 4바이트 외에도 각 목록을 위한 4바이트 워드를 추가로 차지합니다.

  • 팝된 각 VFP 배정밀도 레지스터가 스택에서 8바이트 외에도 각 목록을 위한 4바이트 워드를 추가로 차지합니다.

FRAME ADDRESSFRAME RESTORE를 참조하십시오.

Copyright © 2002-2008 ARM Limited. All rights reserved.ARM DUI 0204IK
Non-Confidential