Scroll to navigation

__SETFPUCW(3) Linux Programmer's Manual __SETFPUCW(3)

名前

__setfpucw - 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, fesetround などが、浮動小数点関連の環境には fegetenv, feholdexcept, fesetenv, feupdateenv などが、 FPU 例外処理には feclearexcept, fegetexceptflag, feraiseexcept, fesetexceptflag, fetestexcept などが導入された。

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

__setfpucw(0x1372)

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

関連項目

feclearexcept(3)
<fpu_control.h>

1997-03-08 Linux