適用範囲

概要
Armv8-R AArch64 デバイス/Cortex-R82 デバイス用のソフトウェアを開発しています。
デバイスはハードウェア浮動小数点(FP)サポートなしでコンフィギュレーションされていますが、以下のツールチェインのいずれかを使用して、ハードウェア浮動小数点サポートなしでソフトウェアをコンパイルおよびビルドする方法が見つかりません。
どのようにしてハードウェア浮動小数点サポートなしのビルドを行えばよいですか?

回答
AArch64 Arm Arm Application Binary Interface (ABI) では、ハードウェア浮動小数点サポートのないAArch64 アプリケーションに対する仕様の定義は含まれていません。
そのため、Armv8-R AArch64をサポートする、このABIを実装するすべてのArm用コンパイラツールチェインは、ハードウェア浮動小数点を使用するArmv8-R AArch64の実装のみをサポートします。

その結果、Armは -march または -mcpu オプションと浮動小数点サポートを無効にする +nofp の機能を使用してビルドされたソフトウェアが、浮動小数点命令または浮動小数点レジスタの使用を回避することを保証できません。

ハードウェア浮動小数点サポートなしでソフトウェアを構築しなければならない、明確かつ不可避の要件がある場合は Arm Developer のサイトで Support case を作成し、その際、次の情報をすべて提供してください:
  1. デバイスの各コアのNeon/FP コンフィギュレーションパラメータ NEON_FP<m> の値はどのようになっていますか?
  2. ソフトウェアはアセンブリ言語以外にどのプログラミング言語に依存していますか?
  3. どのコンパイラツールチェインを使用する予定ですか?使用するツールチェインの完全なバージョン情報を提供してください。たとえばArm Compilerツールチェインの場合は、 armclang --vsn を実行した出力結果を提供してください。
Support caseのタイトルには、プレフィックス [NoFPAArch64] を含めてください。 これはArm がお問い合わせを識別するのに役立ちます。その後、ハードウェア浮動小数点サポートなしのソリューションを構築できるかどうか、Support caseを通じてアドバイスいたします。

関連する情報

アンケートにご協力お願いします

この解答はお客様のお役に立てましたでしょうか?

 

           

検索に戻る