It's quite a small testcase. I hacked it down to about 3700 lines... More seriously, I haven't tried hacking about the (member) function that's causing the problem - I've just removed a load of irrelevant stuff from the file.
This is the failure I found: [ALL]$ /usr/local/gcc/gcc-4.0-20050312/bin/g++ -v Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../../sources/gcc-4.0-20050312/configure --enable-languages=c,c++ --enable-__cxa_atexit --disable-checking --disable-nls --prefix=/usr/local/gcc/gcc-4.0-20050312 Thread model: posix gcc version 4.0.0 20050312 (prerelease) [ALL]$ /usr/local/gcc/gcc-4.0-20050312/bin/g++ -S testcase1.ii testcase1.ii: In member function 'void S::wave_1000130()': testcase1.ii:3691: internal compiler error: Floating point exception Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. Try with a compiler built with checking enabled: [ALL]$ /usr/local/gcc/gcc-4.0-20050312-ggdb3/bin/g++ -v Using built-in specs. Target: i686-pc-linux-gnu Configured with: ../../sources/gcc-4.0-20050312/configure --enable-languages=c,c++ --enable-__cxa_atexit --disable-checking --disable-nls --prefix=/usr/local/gcc/gcc-4.0-20050312 : (reconfigured) ../../sources/gcc-4.0-20050312/configure --enable-languages=c,c++ --enable-__cxa_atexit --disable-nls --prefix=/usr/local/gcc/gcc-4.0-20050312-ggdb3 Thread model: posix gcc version 4.0.0 20050312 (prerelease) [ALL]$ /usr/local/gcc/gcc-4.0-20050312-ggdb3/bin/g++ -S testcase1.ii testcase1.ii: In member function 'void S::wave_1000130()': testcase1.ii:3380: internal compiler error: in simplify_subreg, at simplify-rtx.c:3674 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. [ALL]$ -- Summary: ICE in simplify_subreg, at simplify-rtx.c:3674 Product: gcc Version: 4.0.0 Status: UNCONFIRMED Severity: normal Priority: P2 Component: rtl-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: John at xza5 dot com CC: gcc-bugs at gcc dot gnu dot org,giovannibajo at libero dot it GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20539