kazmax - Linux で自宅サーバー

__setfpucw - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. 可用性 (AVAILABILITY)
  5. 関連項目

名前

__setfpucw - i386アーキテクチャにおけるfpuのコントロールワードの設定 (obsolete)

書式

#include <i386/fpu_control.h>
void __setfpucw((unsigned short) control_word );

説明

__setfpucw ()は、i386アーキテクチャにおいて control_word を fpu (floating point unit) のレジスタに転送する。 これは浮動小数点演算の精度、丸め方、 および浮動小数点例外を制御するのに使われる。


__setfpucw(0x1372)
は、i386アーキテクチャにおけるfpuのコントロールワードを、
- 拡張精度
- 最も近い整数へ丸める、中間の場合は偶数を選択する。
- 桁溢れ、0で除算、及び無効値(NaN)ときに例外を発生
に設定する。

可用性 (AVAILABILITY)

glibc 2.1 以降では、この関数は存在しない。 新たな関数群が C99 から導入された。これらのプロトタイプは /usr/include/fenv.h に置かれている。 fpu の丸めモードの制御には fegetround , fesetround などが、浮動小数点関連の環境には fegetenv , feholdexcept , fesetenv , feupdateenv などが、 fpu 例外処理には feclearexcept , fegetexceptflag , feraiseexcept , fesetexceptflag , fetestexcept などが導入された。

FPU のコントロールワードへどうしても直接アクセスする必要がある場合には、 /usr/include/fpu_control.h の _FPU_GETCW マクロと _FPU_SETCW マクロを用いることは可能である。

関連項目

feclearexcept (3)
/usr/include/i386/fpu_control.h