------- Comment #14 from dave at hiauly1 dot hia dot nrc dot ca  2005-11-26 
20:25 -------
Subject: Re:  [4.1/4.2 Regression] libobjc testsuite failures

> > Here it is.
> 
> Oops, the file sent had HAVE_GAS_WEAKDEF undef'd, so SUPPORTS_WEAK
> is 0.

With HAVE_GAS_WEAKDEF undef'd, we have a large number of objc failures
with the following error:

Executing on host: /mnt/gnu/gcc-3.3/objdir/gcc/xgcc
-B/mnt/gnu/gcc-3.3/objdir/gc
c/ /mnt/gnu/gcc-3.3/gcc/gcc/testsuite/objc/execute/exceptions/catchall-1.m  -w
-O0  -fgnu-runtime -fobjc-exceptions
-I/mnt/gnu/gcc-3.3/gcc/gcc/testsuite/../../
libobjc -L/mnt/gnu/gcc-3.3/objdir/hppa2.0w-hp-hpux11.11/./libobjc/.libs  -lobjc
-lm   -o /mnt/gnu/gcc-3.3/objdir/gcc/testsuite/catchall-1.x0    (timeout = 300)
PASS: objc/execute/exceptions/catchall-1.m compilation,  -O0  -fgnu-runtime
Setting LD_LIBRARY_PATH to
.::/mnt/gnu/gcc-3.3/objdir/gcc:/mnt/gnu/gcc-3.3/objdi
r/gcc:/mnt/gnu/gcc-3.3/objdir/hppa2.0w-hp-hpux11.11/./libobjc/.libs:.::/mnt/gnu/
gcc-3.3/objdir/gcc:/mnt/gnu/gcc-3.3/objdir/gcc:/mnt/gnu/gcc-3.3/objdir/hppa2.0w-
hp-hpux11.11/./libobjc/.libs
/usr/lib/dld.sl: Unresolved symbol: pthread_attr_init (code)  from
/mnt/gnu/gcc-
3.3/objdir/hppa2.0w-hp-hpux11.11/./libobjc/.libs/libobjc.sl.1
FAIL: objc/execute/exceptions/catchall-1.m execution,  -O0  -fgnu-runtime
set_ld_library_path_env_vars:
ld_library_path=.::/mnt/gnu/gcc-3.3/objdir/gcc:/mn
t/gnu/gcc-3.3/objdir/gcc:/mnt/gnu/gcc-3.3/objdir/hppa2.0w-hp-hpux11.11/./libobjc
/.libs

This reference comes from thr-objc.o:

thr-objc.o
         U pthread_attr_init

The header defines pthread_attr_init as follows:

 static int pthread_attr_init(

         pthread_attr_t *attr)
     { return(__pthread_attr_init_system(attr)); }

we have

extern __typeof(pthread_attr_init) __gthrw_pthread_attr_init __asm (""
"pthread_
attr_init");

and in __gthread_objc_init_thread_system

   if (__gthrw_pthread_attr_init (&_objc_thread_attribs) == 0
       && __gthrw_pthread_attr_setdetachstate (&_objc_thread_attribs, 0xde) ==
0)
     return 0;

but in the .s file, we have in __objc_init_thread_system a call
to pthread_attr_init:

        .CALL ARGW0=GR
        bl pthread_attr_init,%r2

        .IMPORT pthread_attr_init,CODE

This shows that using __asm to create aliases to static inline function
fails.

This was with revision 106850M.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24829

Reply via email to