[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-21 Thread sunjoong at gmail dot com
--- Comment #22 from sunjoong at gmail dot com 2007-06-21 09:14 --- I checked VOLATILE statement passing in gfortran 4.3 . Unfortunately I had failed to buid gfortran (and gcc) 4.3 in my i686, I only checked that passing with ia64 binary on another ia64 machine. (There is no gfortran 4

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-20 Thread kargl at gcc dot gnu dot org
--- Comment #21 from kargl at gcc dot gnu dot org 2007-06-21 04:54 --- (In reply to comment #20) > $ gfortran -O1 -o TMalign TMalign.f > In file TMalign.f:2005 > > VOLATILE D > 1 > Error: Unclassifiable statement at (1

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-20 Thread sunjoong at gmail dot com
--- Comment #20 from sunjoong at gmail dot com 2007-06-21 04:35 --- $ gfortran -O1 -o TMalign TMalign.f In file TMalign.f:2005 VOLATILE D 1 Error: Unclassifiable statement at (1) (In reply to comment #19) > You can ad

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-20 Thread kargl at gcc dot gnu dot org
--- Comment #19 from kargl at gcc dot gnu dot org 2007-06-21 04:08 --- (In reply to comment #18) > > I had ONLY HOPEd VOLATILE statement in fortran 77 EXTENSION of gfortran. > I thought that would be convenient > on small modification of legacy fortran 77 program. You've completed miss

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-20 Thread sunjoong at gmail dot com
--- Comment #18 from sunjoong at gmail dot com 2007-06-21 03:27 --- I appreciate kargl's comments; they were helpful. I had known there is VOLATILE attribute in new Fortran standard but I had worked with "LEGACY" fortran77 program! I'll write C code if I shuld write one; that is more co

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-20 Thread kargl at gcc dot gnu dot org
--- Comment #17 from kargl at gcc dot gnu dot org 2007-06-21 02:24 --- (In reply to comment #16) > Thank all of you. > I could understand what make it different. > > There is no 'volatile' statement in fortran77 syntax of gfortran. > Of course, volatile is not fortran77 standard, I thin

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-20 Thread sunjoong at gmail dot com
--- Comment #16 from sunjoong at gmail dot com 2007-06-20 23:34 --- Thank all of you. I could understand what make it different. There is no 'volatile' statement in fortran77 syntax of gfortran. Of course, volatile is not fortran77 standard, I think, but a certian implimentation support

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-19 Thread pinskia at gcc dot gnu dot org
--- Comment #15 from pinskia at gcc dot gnu dot org 2007-06-19 08:11 --- So this is just a dup of bug 323 so closing as such. *** This bug has been marked as a duplicate of 323 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added --

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread kargl at gcc dot gnu dot org
--- Comment #14 from kargl at gcc dot gnu dot org 2007-06-18 20:47 --- (In reply to comment #13) > The '-ffloat-store' option works! Thank you. > > However that gave me some quenstions; > > Is that feature or bug? It is a 'feature' of the i386 class of cpu. See PR 323 for detail

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread sunjoong at gmail dot com
--- Comment #13 from sunjoong at gmail dot com 2007-06-18 20:24 --- The '-ffloat-store' option works! Thank you. However that gave me some quenstions; Is that feature or bug? There is many floating point operations of course. Why the only one specific resion make problem?

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread kargl at gcc dot gnu dot org
--- Comment #12 from kargl at gcc dot gnu dot org 2007-06-18 19:16 --- (In reply to comment #11) > Yes, I agree that program is not beautiful > and I know the the array 'w' of 'u3b' subroutine problem; > I think the author of u3b use w(1) as pointer. Change the 1 to *. > However, > the

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread sunjoong at gmail dot com
--- Comment #11 from sunjoong at gmail dot com 2007-06-18 18:47 --- Yes, I agree that program is not beautiful and I know the the array 'w' of 'u3b' subroutine problem; I think the author of u3b use w(1) as pointer. However, the wrong generation of optimized code occurs in 'DP' subrouti

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread kargl at gcc dot gnu dot org
--- Comment #10 from kargl at gcc dot gnu dot org 2007-06-18 18:36 --- There are literal hundreds of warning given by ftnchek, and there appears to be an array bounds problem. troutmask:sgk[231] gfc4x -o z -O -fbounds-check TMalign.f troutmask:sgk[232] ./z 1aquA.pdb 1avaC.pdb | grep RMS

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread sunjoong at gmail dot com
--- Comment #9 from sunjoong at gmail dot com 2007-06-18 18:31 --- I cut the bellow and made a new subroutine, then another part did not change on '-O0' and '-O1'; D=VAL(i-1,j-1)+SCORE(i,j) H=VAL(i-1,j) if(DIR(i-1,j))H=H+GAP_OPEN V=VAL(i,j-1)

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread sunjoong at gmail dot com
--- Comment #8 from sunjoong at gmail dot com 2007-06-18 17:26 --- I checked which part of TMalign.f make optimizaton wrong; In DP subroutine, DO j=1,NSEQ2 DO i=1,NSEQ1 D=VAL(i-1,j-1)+SCORE(i,j) H=VAL(i-1,j) if(DIR(i-1,j))H=H+GAP_OPEN

[Bug fortran/32391] Wrong code with optimization on i686-pc-linux-gnu

2007-06-18 Thread burnus at gcc dot gnu dot org
--- Comment #7 from burnus at gcc dot gnu dot org 2007-06-18 16:38 --- > $ gfortran -v > Target: i686-pc-linux-gnu > gcc version 4.1.2 (Gentoo 4.1.2) I can reproduce this on my Pentium M (openSUSE 10.2) with Target: i586-suse-linux gcc version 4.1.2 20061115 (prerelease) (SUSE Linux