1.2.2 ARM アーキテクチャ用アプリケーションバイナリインタフェース(ABI)への準拠

ARM® アーキテクチャ用 ABI は、ソースプログラムをオブジェクトファイルに変換する中でプロセッサ関連の側面を記述した仕様群です。

ABI の関連機能に準拠している何らかのツールチェーンで生成されたオブジェクトファイルは、最終の実行イメージまたはライブラリにリンクさせることができます。
仕様の各マニュアルは、互換性の特定エリアについて説明しています。例えば、 ARM® アーキテクチャ用 C ライブラリ ABI』(CLIBABI)では、すべての準拠した実装に共通している C ライブラリの部分について説明しています。
ABI のマニュアルには、プラットフォーム固有とマークされるエリアがいくつか含まれています。完全な実行環境を定義するには、このようなプラットフォーム固有の詳細が必要になります。このため、『ARM GNU/Linux ABI supplement』など、多くの補足仕様書が提供されています。
『Base Standard ABI for the ARM® Architecture』(BSABI)によって、 ARM アーキテクチャ用の ABI をサポートする異なるプロデューサから A32、T32 のオブジェクトおよびライブラリを使用できます。 ARM コンパイルツールでは、Debug With Arbitrary Record Format(DWARF)3 デバッグテーブル(DWARF Debugging Standard Version 3)を含め、BSABI が完全にサポートされます。
ARM C および C++ ライブラリは、BSABI および CLIBABI で定義されている標準に準拠しています。libc++ ライブラリは、ARM アーキテクチャ用 C++ ABI(CPPABI)に準拠する必要があります。ただし、Array Construction および Delete ヘルパ関数は除きます。
関連する作業
1.2.3 CLIBABI の他の実装に対するオブジェクトファイルの移植性の向上
関連する参考文書
1.23.5 標準 C++ ライブラリの実装定義
関連情報
Application Binary Interface (ABI) for the ARM Architecture
DWARF Debugging Standard
非機密扱いPDF file icon PDF 版ARM DUI0808CJ
Copyright © 2014, 2015 ARM.All rights reserved.