12.07.2015 Views

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

RealView Compilation Tools コンパイラユーザガイド - ARM ...

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

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

イ ン ラ イ ンアセン ブ ラ と 組 み 込 みアセン ブ ラの 使 用各 仮 想 レ ジ ス タ の 初 期 値 は 予 測 不 能 です。 仮 想 レ ジ ス タ を 読 み 出 すには、 その 前 に 書 き 込 みを 行 う 必 要 があ り ます。 仮 想 レ ジ ス タへの 書 き 込 みの 前 に 読み 出 しを 行 うと、コンパイラによりエラーが 生 成 されます。 例 えば、 変 数 r1に 関 連 付 け られた 仮 想 レ ジ ス タ を 読 み 出 し た 場 合 などです。C または C++ の コー ド 内 で 変 数 名 を 明 示 的 に 宣 言 する 必 要 があ り ます。 命 令のオペラ ン ドには C または C++ の 変 数 を 使 用 する こ と をお 勧 め し ます。 各 変換 ユニ ッ ト で、 仮 想 レジス タ または 物 理 レジス タの 名 前 が 初 めて 使 用 されるときに 1 回 のみ 警 告 が コ ンパ イ ラ に よ り 表 示 さ れます。 例 えば、 レジス タ r3を 指 定 し た 場 合 、 警 告 が 表 示 さ れます。7.1.5 定 数定 数 式 の 指 定 子 # は 省 略 可 能 です。 こ の 指 定 子 を 使 用 する 場 合 、 直 後 の 式 を 定数 にする 必 要 があ り ます。7.1.6 命 令 の 展 開インラインアセンブリコードの <strong>ARM</strong> 命 令 は、 コ ンパイル さ れたオブジ ェ クト 内 でいくつかの 命 令 に 展 開 されることがあります。 この 展 開 は、 命 令 の 種類 、 命 令 の 中 で 指 定 さ れる オペ ラ ン ド の 数 、 および 各 オペラ ン ド の 型 と 値 によって 異 なります。定 数 を 使 用 する 命 令定 数 オペラ ン ド を 伴 う 命 令 で 使 用 さ れる 定 数 は、 その 命 令 で 許 容 さ れてい る値 に 制 限 されません。 代 わ り に、 コ ンパ イ ラ に よ り 、 命 令 は 同 等 の 効 果 がある 命 令 のシーケンスに 変 換 されます。 以 下 に 例 を 示 し ます。ADD r0,r0,#1023上 記 の 命 令 は、 以 下 の よ う に 変 換 さ れます。ADD r0,r0,#1024SUB r0,r0,#1コ プ ロ セ ッ サ 命 令 を 除 き、 定 数 オペラ ン ド を 伴 う すべての <strong>ARM</strong> 命 令 は 命 令の 展 開 をサポー ト し ます。 また、MUL 命 令 は、 第 3 オペラ ン ド が 定 数 であ る 場合 、 加 算 と シ フ ト のシーケン スに 展 開 で き ます。7-10 Copyright © 2002-2010 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DUI 0205IJNon-Confidential, ID 100419

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

Saved successfully!

Ooh no, something went wrong!