git-svn-id: svn://svn.valgrind.org/vex/trunk@658
ew = EmWarn_X86_sseExns;
}
else
- if ((mxcsr & (1<<6)) || (mxcsr & (1<<15))) {
- /* FZ or DAZ is set */
- ew = EmWarn_X86_fz_daz;
+ if (mxcsr & (1<<15)) {
+ /* FZ is set */
+ ew = EmWarn_X86_fz;
+ }
+ else
+ if (mxcsr & (1<<6)) {
+ /* DAZ is set */
+ ew = EmWarn_X86_daz;
}
return (((ULong)ew) << 32) | ((ULong)rmode);
case EmWarn_X86_x87precision:
return "Selection of non-80-bit x87 FP precision";
case EmWarn_X86_sseExns:
- return "Unmasking SSE FP exceptionss";
- case EmWarn_X86_fz_daz:
- return "Setting MXCSR.FZ or MXCSR.DAZ";
+ return "Unmasking SSE FP exceptions";
+ case EmWarn_X86_fz:
+ return "Setting %mxcsr.fz (SSE flush-underflows-to-zero mode)";
+ case EmWarn_X86_daz:
+ return "Setting %mxcsr.daz (SSE treat-denormals-as-zero mode)";
default:
vpanic("LibVEX_EmWarn_string: unknown warning");
}
/* unmasking SSE FP exceptions is not supported */
EmWarn_X86_sseExns,
- /* setting mxcsr.fz or mxcsr.daz is not supported */
- EmWarn_X86_fz_daz,
+ /* setting mxcsr.fz is not supported */
+ EmWarn_X86_fz,
+
+ /* setting mxcsr.daz is not supported */
+ EmWarn_X86_daz,
EmWarn_NUMBER
}