------- Comment #7 from lucier at math dot purdue dot edu 2007-10-28 16:05 ------- time with -O2 instead of -O1:
with 4.2.2: (time (direct-fft-recursive-4 a table)) 426 ms real time 426 ms cpu time (425 user, 1 system) no collections 64 bytes allocated no minor faults no major faults with 4.3.0: (time (direct-fft-recursive-4 a table)) 433 ms real time 433 ms cpu time (433 user, 0 system) no collections 64 bytes allocated no minor faults no major faults With -O1 -fno-ivopts: with 4.2.2: (time (direct-fft-recursive-4 a table)) 374 ms real time 374 ms cpu time (374 user, 0 system) no collections 64 bytes allocated no minor faults no major faults with 4.3.0: (time (direct-fft-recursive-4 a table)) 443 ms real time 443 ms cpu time (443 user, 0 system) no collections 64 bytes allocated 1 minor fault no major faults Why -fno-strict-aliasing: I don't need it for this particular routine, but in the rest of the file is part of a bignum library that accesses the bignum digits as arrays of either 8-, 32-, or 64-bit unsigned ints, and it hasn't been rewritten to use unions of arrays. (This is part of the runtime system of a Scheme implementation, and there are other places that just cast pointers to achieve low-level things.) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33928