Skip to main content

IAR Embedded Workbench for Arm 9.70.x

拡張キーワードの一覧

このセクションの内容:

以下の表に、拡張キーワードの一覧を示します。

拡張キーワード

説明

__absolute

オブジェクトへの参照が絶対アドレスを使用するようにします。

__arm

関数をArmモードで実行します。

__big_endian

ビッグエンディアンバイトオーダを使用する変数を宣言します。

__cmse_nonsecure_call

非セキュアのコードを呼び出す関数ポインタを宣言します。

__cmse_nonsecure_entry

非セキュアのイメージから呼び出し可能な関数を作成します。

__exception

64ビットモード例外関数を宣言します

__fiq

高速割り込み関数を宣言します。

__interwork

ArmおよびThumbモードの両方から呼び出し可能な関数を宣言します。

__intrinsic

コンパイラの内部使用専用に予約されています。

__irq

割り込み関数を宣言します。

__little_endian

リトルエンディアンバイトオーダを使用する変数を宣言します。

__naked

関数フレームをセットアップまたはティアダウンするために、コードを生成しないで関数を宣言します

__nested

__irqで宣言した割り込み関数をネストできるようにします。つまり、同じ割り込みタイプによる割り込みを許可します

__no_alloc, __no_alloc16

実行ファイルで定数を使用可能にします。

__no_alloc_str, __no_alloc_str16

実行ファイルで文字列リテラルを使用可能にします。

__no_init

データオブジェクトを不揮発性メモリに配置します。

__noreturn

関数がリターンしないことをコンパイラに通知します。

__packed

データ型アライメントを1に減らします。

__pcrel

‑‑ropi コンパイラオプションの使用時に、コンパイラで内部的に使用されます

__ramfunc

関数をRAMモードで実行します。

__root

関数や変数を、未使用の場合でもオブジェクトに含めます。

__ro_placement

constvolatileデータをリードオンリーメモリに配置します。

__sbrel

‑‑rwpi コンパイラオプションの使用時に、コンパイラで内部的に使用されます

__stackless

機能するスタックなしに関数を呼び出し可能にします。

__svc

32ビットモードのソフトウェア割込み関数、または64ビットモードのソフトウェア例外関数を宣言します

__swi

__svcのエイリアス

__task

レジスタ保護の規則を緩和します

__thumb

関数をThumbモードで実行します。

__weak

外部的に弱いリンクになるようにシンボルを宣言します。

表101 拡張キーワードの一覧