DOKK / manpages / debian 11 / manpages-ja-dev / __setfpucw.3.ja
__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(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)ときに例外を発生に設定する。

関連項目

feclearexcept(3)
<fpu_control.h>

この文書について

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

2012-12-31 Linux