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

書式

#include <i386/fpu_control.h>

void __setfpucw(unsigned short control_word);

説明

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

準拠

この関数は非標準で GNU 拡張である。

注意

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

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

__setfpucw(0x1372)

は、i386アーキテクチャにおける FPU のコントロールワードを、

     - 拡張精度

     - 最も近い整数へ丸める、中間の場合は偶数を選択する。

     - 桁溢れ、0で除算、及び無効値(NaN)ときに例外を発生に設定する。

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.65 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。