@article{oai:ipsj.ixsq.nii.ac.jp:00011212, author = {首藤, 一幸 and 関口, 智嗣 and 村岡, 洋一 and Kazuyuki, Shudo and Satoshi, Sekiguchi and Yoichi, Muraoka}, issue = {6}, journal = {情報処理学会論文誌}, month = {Jun}, note = {IA-32プロセッサは,IEEE 754準拠であるにもかかわらず,ある浮動小数点演算に対して他のプロセッサとは異なる結果を返す.IA-32プロセッサ上で他のプロセッサと同一の演算結果を得るための対処をJava Just-in-Timeコンパイラに実装した.倍精度数の演算ではストア--リロードとスケーリングを行う必要があるが,単精度数の演算では丸め精度を倍精度としたままストア--リロードだけ行えば十分であることが明らかになった.また,いくつかの実装方法について性能への影響を調べたところ,スケーリング専用命令ではなく乗算命令を用いることで性能の低下幅は約40%にまで抑えられることが分かった., IA-32 processors yield different results of floating-point operations from other processors, even though they are all compliant with IEEE 754. The Java specifications need runtime systems to implement the FP-strict semantics, which other IEEE 754 compliant processors naturally fulfill. We implemented the semantics on a Java Just-in-Time compiler for IA-32. This study reveals that single-precision operations can be performed with precision control bits of the processor staying as double-precision. Performance evaluation demonstrates that our implementation method reduced the performance decline by the semantics down to 40%.}, pages = {1570--1582}, title = {厳密な浮動小数点演算セマンティクスのJava実行時コンパイラへの実装}, volume = {44}, year = {2003} }