Haswell FMA 指令生成异常

Haswell FMA Instructions Generating Denormals

我正在使用 Intel Haswell CPU 的 FMA 指令来优化一些计算。

但是,我发现即使我将 MXCSR 寄存器设置为 DNZ 和 FTZ 模式,这些指令也会生成异常。

如何强制这些 FMA 指令生成 0 而不是非正规数?

我正在处理单精度浮点数据。

只是为了给遇到这个问题的任何人提供一个明确的答案:

据了解,FMA 指令do 遵守 DAZ 和 FTZ。提问者实际上得到了 NaN 结果,但由于对表示的字节序的混淆而将它们误解为非规范化。