| |||
Home > コンパイラのコーディング慣行 > デフォルトで選択されるハードウェアまたはソフトウェアによる浮動小数点サポート |
デフォルトのターゲット FPU アーキテクチャは、使用された --cpu
オプションに基づいて決定されます。
--cpu
で指定された CPU に VFP コプロセッサがある場合、デフォルトのターゲット FPU
アーキテクチャは、その CPU の VFP アーキテクチャになります。例えば、オプションとして --cpu ARM1136JF-S
を指定すると、--fpu
vfpv2
というオプションが暗黙的に選択されます。
ARM Linux アプリケーションを --arm_linux
または --arm_linux_paths
でビルドする場合、デフォルトは常にソフトウェア浮動小数点リンケージとなります。FPU
が暗黙的に決まるような CPU を指定したとしても(--cpu=ARM1136JF-S
など)、デフォルトはあくまで --fpu=softvfp+vfp
であり、--fpu=vfp
とはなりません。
VFP コプロセッサが存在する場合は、VFP 命令が生成されます。VFP コプロセッサが存在しない場合、コンパイラはソフトウェア浮動小数点ライブラリ fplib
を呼び出すコードを生成して浮動小数点演算を実行します。fplib
は、ARM
Compilation Tools スイートの標準配布パッケージの C ライブラリに含まれています。