>>> You provided a lot of good information in your post, but the >>> conclusion was not entirely clear. >>> Are you suggesting requiring SSE2 at this time? >> >> Yes. It appears to get used anyway for 64bit executables, and it seems >> safe enough to demand it for 32bit executables. > > +1 > far better than inline asm poking control registers
The cause of the issues is that the unexpected precision conversions raises small difference in floating-point calculation. If libguile uses x87 FPU, high-precision calculation and low-precision calculation coexist inside GUILE, and precision conversion occurs between them. Even if C++ uses SSE2, libguile and other shared libraries still may use x87 FPU. I wonder this may cause problems.