Jakub Jelinek wrote:
If it is on i?86, might very well be a problem caused by excess
precision.
Try -O2 -msse2 -mfpmath=sse to see if it helps, you likely need some
volatile temporaries to ensure results are rounded down to the desired
float resp. double precision (when results are kept within FP stack, they
use extended precision).
If not, using binary search between -O0 and -O2 objects you can easily
find the problematic object and with some extra effort even the
problematic function. Create a self-contained testcase from it (main
calling the problematic function with some arguments that reproduce it (if
needed make it __attribute__((noinline)), add stubs for functions the
problematic function calls) and report.
Jakub
x86_64. I guess that's the same?