64ビットA64コード
このセクションの内容:
64ビットモードの場合、IAR C/C++コンパイラfor Armは、A64命令セットのコードを生成できます。‑‑cpu_mode オプション、あるいは ‑‑aarch64 や ‑‑abi オプションを使用して、プロジェクトで使用する命令セットを指定します。
関数呼び出しを実行する場合、コンパイラは、使用できる最も効率的なアセンブラ言語命令または命令シーケンスを生成しようとします。そのため、範囲0x0-0xFFFF'FFFF'FFFF'FFFFの連続する16 EiBのメモリがコードの配置に使用されます。コードモジュールあたり64 MBという制限があります。
コードポインタのサイズは4または8バイトで、データモデルにより異なります。コードポインタからデータポインタや整数型、およびその逆の場合での暗黙的および明示的なキャスティングには制限があります。制限の詳細については、ポインタ型を参照してください。
「アセンブラ言語インタフェース」では、アセンブラ言語からのC関数の呼び出し、およびその逆の方法に関する説明で、生成されるコードを詳しく説明しています。