サイト内検索

SoC において、ソフトウェア・プロジェクト(ベアメタル・ベース)の Makefile では -mfloat-abi=softfp というコンパイル・オプションがありました。これは、ARM Cortex-A9 の FPU(浮動小数点コプロセッサ)を使用せずに、浮動小数点演算を実行するソフトウェア・コードが生成されると理解しましたが、正しいでしょうか?

SoC FPGA

カテゴリ:SoC
ツール:SoC EDS
デバイス:-


いいえ、違います。

-mfloat-abi オプション に softfp を指定した場合、浮動小数点演算は FPU を使用して実行されます。
-mfloat-abi オプション に hardfp を指定した場合も同様に、浮動小数点演算は FPU を使用して実行されます。
両者の違いは、softfp を指定した場合では引数と戻り値が r0 ~ r3 の ARM 整数レジスタを使用することに対して、hardfp を指定した場合では引数と戻り値が FPU レジスタを使用する点が異なります。


経験豊富なFAEが
無料でご相談を承ります。

特定製品の仕様からパーツの選定まで、当社のFAEが皆様のテクニカルなお悩みに無料で回答します。ぜひ、お気軽にご相談ください。