08.11.2014 Views

RealView Compilation Tools アセンブラガイド - ARM Information Center

RealView Compilation Tools アセンブラガイド - ARM Information Center

RealView Compilation Tools アセンブラガイド - ARM Information Center

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ディレクティブリファレンス<br />

7.5.3 FRAME PUSH<br />

FRAME PUSH ディレクティブを 使 用 して、 通 常 は 関 数 エントリにおいて、 呼 び 出<br />

さ れる 側 がレ ジ ス タ を 保 存 する タ イ ミ ングをアセンブ ラ に 通 知 し ます。 この<br />

ディレクティブは、FUNCTION ディレクティブと ENDFUNC ディレクティブを 含 む<br />

関 数 ま たは PROC ディレクティブと ENDP デ ィ レ ク テ ィ ブを 含 む 関 数 でのみ 使 用<br />

できます。<br />

構 文<br />

FRAME PUSH には 以 下 の 2 つの 構 文 があ り ます。<br />

FRAME PUSH {reglist}<br />

FRAME PUSH {reglist},n<br />

FRAME PUSH n<br />

各 項 目 には 以 下 の 意 味 があ り ます。<br />

reglist<br />

n<br />

標 準 構 造 フ レームア ド レ スの 下 位 方 向 に 連 続 し て ス ト ア さ れる<br />

レジスタのリ ス ト を 指 定 します。 リストには 少 なくとも 1 本 のレ<br />

ジ ス タ を 指 定 する 必 要 があ り ます。<br />

スタ ッ クポインタが 移 動 するバイ ト 数 を 指 定 します。<br />

使 用 法<br />

FRAME PUSH は、 FRAME ADDRESS ディレクティブおよび FRAME SAVE ディレクティブ<br />

を 使 用 する こ と と 同 じ です。 このディレクティブを 使 用 すると、 1 つの 命 令 で<br />

レジスタを 保 存 し、 スタッ クポインタを 変 更 するこ とができます。<br />

FRAME PUSH は、 こ のデ ィ レ ク テ ィ ブが 参 照 する 命 令 の 直 後 に 配 置 する 必 要 があ<br />

ります。<br />

n が 指 定 されていないかゼロの 場 合 、 アセンブラによ って、 {reglist} から 標 準<br />

構 造 フ レームア ド レ ス までの 新 し いオフセ ッ ト が 計 算 さ れます。 アセンブラ<br />

は 以 下 を 前 提 と し ています。<br />

• プッシュされる 各 <strong>ARM</strong> レジスタによってスタック 上 の 4 バイ トが 占 有<br />

されています。<br />

• プッシュされる 各 VFP 単 精 度 レジスタによってスタック 上 の 4 バイ トが<br />

占 有 さ れ、 さ ら に リ ス ト ご と に 4 バイ ト ワードが 占 有 されています。<br />

7-52 Copyright © 2002-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0204IJ<br />

Non-Confidential

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!