SoC において、ソフトウェア・プロジェクト(ベアメタル・ベース)の Makefile では -mfloat-abi=softfp というコンパイル・オプションがありました。これは、ARM Cortex-A9 の FPU(浮動小数点コプロセッサ)を使用せずに、浮動小数点演算を実行するソフトウェア・コードが生成されると理解しましたが、正しいでしょうか?
SoC FPGAs
カテゴリ:SoC
ツール:SoC EDS
デバイス:-
いいえ、違います。
-mfloat-abi オプション に softfp を指定した場合、浮動小数点演算は FPU を使用して実行されます。
-mfloat-abi オプション に hardfp を指定した場合も同様に、浮動小数点演算は FPU を使用して実行されます。
両者の違いは、softfp を指定した場合では引数と戻り値が r0 ~ r3 の ARM 整数レジスタを使用することに対して、hardfp を指定した場合では引数と戻り値が FPU レジスタを使用する点が異なります。
Experienced FAE
Free consultation is available.
From specific product specifications to parts selection, the Company FAE will answer your technical concerns free of charge. Please feel free to contact us.