4.2. アセンブリ言語のインターワーク

アセンブリ言語ソースファイルには、複数のエリア(ELF セクションに対応するエリア)を含めることができます。各エリアは、ARM 命令と Thumb 命令の一方または両方を保持できます。

リンカを使用して、呼び出し元とは異なる命令セットを使用するルーチンとの間の呼び出しを設定できます。これを行うには、BL を使用してルーチンを呼び出します(ベニアを使用したアセンブリ言語のインターワーク参照)。

必要であれば、命令セットを明示的に変更するコードを記述することもできます。状況によっては、この方法で、サイズが小さいコードや実行速度が速いコードを記述できます。

プロセッサ状態の切り替えを行う命令は以下のとおりです。

以下のディレクティブを使用して、適切な命令セットの命令をアセンブルするようアセンブラに指定できます(アセンブラモードの変更参照)。

このセクションは以下のサブセクションから構成されています。

Copyright © 2002-2006 ARM Limited. All rights reserved.ARM DUI 0203GJ
Non-Confidential