This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Darwin -m64 results


Mike,
    I managed to suppress the linker warnings which occur with "-m64 -g" with COMMON blocks
by applying the following patch...

--- gcc-4.2-20060822/gcc/testsuite/lib/prune.exp.org    2006-08-23 18:33:56.000000000 -0400
+++ gcc-4.2-20060822/gcc/testsuite/lib/prune.exp        2006-08-23 18:41:28.000000000 -0400
@@ -43,6 +43,7 @@
     regsub -all "(^|\n)\[^\n\]*file path prefix \[^\n\]* never used" $text "" text
     regsub -all "(^|\n)\[^\n\]*linker input file unused since linking not done" $text "" text
 
+    regsub -all "(^|\n)can't find atom for N_GSYM stabs \[^\n\]* in \[^\n\]*" $text "" text
     #send_user "After:$text\n"
 
     return $text

Running the fortran testsuite for -m64 now produces...

Native configuration is powerpc-apple-darwin8

                === gfortran tests ===


Running target unix/-m64
FAIL: gfortran.dg/direct_io_6.f90  -O0  execution test
FAIL: gfortran.dg/direct_io_6.f90  -O1  execution test
FAIL: gfortran.dg/direct_io_6.f90  -O2  execution test
FAIL: gfortran.dg/direct_io_6.f90  -O3 -fomit-frame-pointer  execution test
FAIL: gfortran.dg/direct_io_6.f90  -O3 -fomit-frame-pointer -funroll-loops  execution test
FAIL: gfortran.dg/direct_io_6.f90  -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions  execution test
FAIL: gfortran.dg/direct_io_6.f90  -O3 -g  execution test
FAIL: gfortran.dg/direct_io_6.f90  -Os  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -O0  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -O1  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -O2  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -O3 -fomit-frame-pointer  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -O3 -fomit-frame-pointer -funroll-loops  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -O3 -g  execution test
FAIL: gfortran.dg/large_real_kind_2.F90  -Os  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -O0  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -O1  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -O2  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -O3 -fomit-frame-pointer  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -O3 -fomit-frame-pointer -funroll-loops  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -O3 -g  execution test
FAIL: gfortran.dg/large_real_kind_form_io_2.f90  -Os  execution test
XPASS: gfortran.dg/vect/vect-5.f90  -O  scan-tree-dump-times vectorized 2 loops 1
XPASS: gfortran.dg/vect/vect-5.f90  -O  scan-tree-dump-times Alignment of access forced using peeling 1
XPASS: gfortran.dg/vect/vect-5.f90  -O  scan-tree-dump-times Vectorizing an unaligned access 2

                === gfortran Summary ===

# of expected passes            14020
# of unexpected failures        24
# of unexpected successes       3
# of expected failures          7
# of unsupported tests          41
/sw/src/fink.build/gcc4-4.1.999-20060822/darwin_objdir/gcc/testsuite/gfortran/../../gfortran  version 4.2.0 20060822 (experimental)


Compiler version: 4.2.0 20060822 (experimental) gfortran 
Platform: powerpc-apple-darwin8
configure flags: --prefix=/sw --prefix=/sw/lib/gcc4 --enable-languages=c,c++,fortran --infodir=/sw/lib/gcc4/share/info --with-gmp=/sw --with-included-gettext --host=powerpc-apple-darwin8 --with-as=/sw/lib/odcctools/bin/as --with-ld=/sw/lib/odcctools/bin/ld --with-nm=/sw/lib/odcctools/bin/nm,;t t

...which is quite nice since it is the same number of failures as with -m32 with three additional unexpected passes.
    I decided to look at one other issue (with the gdb from Xcode 2.3). I built a small test program...

      program test
      integer i
      common i
      i=1248
      i=2359
      i=3460
      end

...with "-O3 -m64 -g" (which produces the linker warning) to see if I could actually see the
contents of the i variable in gdb when it was in a common block. What I found was that I
could set a breakpoint at assign.f90:1 but when I tried to run the program the break point
wasn't honored. At first I though this was due to the common block so I commented it out.
However, that code built at "-O3 -m64 -g", without linker errors, didn't produce a usable
breakpoint which actually worked. I checked both versions of the test program with a -m32
build and the breakpoint worked. Do I need Xcode 2.4 for a 64-bit saavy gdb or do I need
to build from the gdb cvs to have usable breakpoints in fortran code on 64-bit Darwin?
               Jack



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]