‑‑no_unaligned_access
このセクションの内容:
構文
説明
このオプションは、コンパイラでアライメントされないアクセスを回避するときに使用します。データアクセスは、通常、パフォーマンス上の理由でアライメントされて実行されます。ただし、アクセスによっては、特にパックデータ構造体に対する読込みまたは書込みの場合、アライメントされない場合があります。このオプションを使用すると、このようなすべてのアクセスは、アライメントされないアクセスを拒否するため、小さいデータサイズを使用して実行されます。このオプションは、Armv6 アーキテクチャ以降で使用可能です。
Armv7-M、Armv8-A、およびArmv8-Mのアーキテクチャには、ハードウェアは、アライメントしていないアクセスがソフトウェアによって制御されることをサポートします。これらのアーキテクチャには、ライブラリルーチンの派生型があります。アライメントされていないアクセスがハードウェア(接頭辞が__iar_unaligned_のシンボル)でサポートされているときは、この変数は速いです。入力モジュールのいずれかが、アライメントされていないアクセスを許可しない場合、IAR リンカは、これらの変形型を使用
しません。
関連項目
注意
このオプションを設定するには、[プロジェクト]>[オプション]>[C/C++コンパイラ]>[追加オプション]を選択します。