This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: [Patch,fortran] PR 27740 Symbol versioning for libgfortran


On Sun, Nov 05, 2006 at 10:20:03AM +0100, FX Coudert wrote:
> >the attached patch implements symbol versioning for libgfortran. At  
> >the same time it does some namespace cleanup, so that all the  
> >exported symbols have names beginning with _gfortran_.
> 
> For those who would like to test it on non-linux platforms (and  
> they're welcome, the more the merrier), please find attached complete  
> diff (gzipped), including the new gfortran.map file and all the  
> regenerated files. I'll be testing it on i386-mingw, I think having  
> someone testing it on cygwin would be nice also.
> 
> PS: Janne, any reason why the map file is called gfortran.map, and  
> not libgfortran.map?
> 

I applied this gzipped patch and see multiple testsuite regressions.

                === gfortran Summary ===

# of expected passes            14828
# of unexpected failures        32
# of expected failures          7
# of untested testcases         16
# of unsupported tests          80
/usr/home/kargl/gcc/obj/gcc/testsuite/gfortran/../../gfortran  version 4.3.0 20061105 (experimental)

FAIL: gfortran.dg/csqrt_2.f  -O0  (test for excess errors)
Excess errors:
: undefined reference to `csqrtf'
: undefined reference to `csqrtf'

FAIL: gfortran.dg/f2c_2.f90  -O0  (test for excess errors)
Excess errors:
: undefined reference to `csqrtf'
: undefined reference to `csqrt'

FAIL: gfortran.fortran-torture/execute/csqrt_1.f90 compilation,  -O0 
UNTESTED: gfortran.fortran-torture/execute/csqrt_1.f90 execution,  -O0 
Executing on host: /usr/home/kargl/gcc/obj/gcc/testsuite/gfortran/../../gfortran
 -B/usr/home/kargl/gcc/obj/gcc/testsuite/gfortran/../../ /usr/home/kargl/gcc/gcc
4x/gcc/testsuite/gfortran.fortran-torture/execute/csqrt_1.f90  -w  -O1   -L/usr/
home/kargl/gcc/obj/i386-unknown-freebsd7.0/./libgfortran/.libs -L/usr/home/kargl
/gcc/obj/i386-unknown-freebsd7.0/./libgfortran/.libs -L/usr/home/kargl/gcc/obj/i
386-unknown-freebsd7.0/./libiberty  -lm   -o /usr/home/kargl/gcc/obj/gcc/testsui
te/gfortran/csqrt_1.x    (timeout = 300)
/usr/tmp/cco3lP8n.o(.text+0x3b2): In function `square_root_':
: undefined reference to `csqrtf'
/usr/tmp/cco3lP8n.o(.text+0x3fa): In function `square_root_':
: undefined reference to `csqrtf'
collect2: ld returned 1 exit status
compiler exited with status 1

FAIL: gfortran.fortran-torture/execute/power.f90 compilation,  -O0 
UNTESTED: gfortran.fortran-torture/execute/power.f90 execution,  -O0 
Executing on host: /usr/home/kargl/gcc/obj/gcc/testsuite/gfortran/../../gfortran
 -B/usr/home/kargl/gcc/obj/gcc/testsuite/gfortran/../../ /usr/home/kargl/gcc/gcc
4x/gcc/testsuite/gfortran.fortran-torture/execute/power.f90  -w  -O1   -L/usr/ho
me/kargl/gcc/obj/i386-unknown-freebsd7.0/./libgfortran/.libs -L/usr/home/kargl/g
cc/obj/i386-unknown-freebsd7.0/./libgfortran/.libs -L/usr/home/kargl/gcc/obj/i38
6-unknown-freebsd7.0/./libiberty  -lm   -o /usr/home/kargl/gcc/obj/gcc/testsuite
/gfortran/power.x    (timeout = 300)
/usr/tmp/ccVC5C7R.o(.text+0x189): In function `MAIN__':
: undefined reference to `cpowf'
collect2: ld returned 1 exit status
compiler exited with status 1
output is:
/usr/tmp/ccVC5C7R.o(.text+0x189): In function `MAIN__':
: undefined reference to `cpowf'
collect2: ld returned 1 exit status

FreeBSD should be picking up csqrtf et al from c99_intrinsics.c.  It
seems that the patch is corrupting the HAVE_CSQRTF macro.  I'll 
applied Janne's patch tommorrow and configure with maintainer-mode.

-- 
Steve


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