Manpages

名 前

__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/ に 書 か れ て い る 。