> > Hi, > > > > I have a rather nasty optimization issue with gfortran (as of > yesterday). As I think it could > > be an optimization issue and not an gfortran frontend issue, I post it > here, > > the fortran list was not able to help so far. > > > > I narrowed my problem to one single fortran function. If I compile this > function with > > "gfortran -O2 -march=pentium4" the output is OK, using > > "gfortran -O2 -march=pentium4 -fforce-addr" produces wrong output. > > > > When reducing optimization level to "-O1", the issue vanishes for all > tried flag combinations. > > If I comment out a particular non-functional line in this code, the > issue goes away: > > > > if (always_true) then > > .... > > else > > this_line_commented_out_makes_it_working_again > > .... > > endif > > > > Further data points: > > - output of -fdump-tree-optimized is the same for both the working and > the broken case (of the > > original function, not the line commenting test). > > - there are differences in assembler output though. > > - the code calls C functions. > > - I could reproduce this issue on an different, non-pentium4 machine > using the same flags. > > - the flag -march=pentium4 is necessary to trigger the issue. > > > > > > I'm in a loss where to search for the real cause. Has anybody a hint how > to proceed further? > > Should I post the code of this function here on the list (~300 LOC)? > > You should file a bugreport with bugzilla instead. > http://gcc.gnu.org/bugzilla > > Thanks, > Richard.
It's http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33638 I first hoped to get help to narrow things a bit further, as my problem is really a bit strange, so I decided to first write an email. I simply assigned it now to the middle-end, but of course it could also be a gfortran issue. Thanks, Manfred -- Ist Ihr Browser Vista-kompatibel? Jetzt die neuesten Browser-Versionen downloaden: http://www.gmx.net/de/go/browser