This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc 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] Linuxthreads enable Altivec for setjmp/longjmp part 4 of 5


Ulrich Drepper wrote:

> Steve Munroe wrote:
>
> >              * sysdeps/unix/sysv/linux/powerpc/powerpc32/pt-longjmp.c: 
New File.
> >              * sysdeps/unix/sysv/linux/powerpc/powerpc64/pt-longjmp.c: 
New File.
>
> The difference between these two fiels is only the version number of the
> old interfaces?  Since there are no old versions for ppc64 the generated
> headers should take care of automatically using 2.3 as the minimal
> version.  I.e., only one copy of the file is needed.

I tried this but the PPC64 build failed with:

/opt/ppc64-20030813/lib/gcc-lib/powerpc-linux/3.2.4/../../../../powerpc-linux/bin/ld: 
/home/sjmunroe/work/build-23/linuxthreads/libpthread.so: undefined 
versioned symbol name siglongjmp@GLIBC_2.0
/opt/ppc64-20030813/lib/gcc-lib/powerpc-linux/3.2.4/../../../../powerpc-linux/bin/ld: 
failed to set dynamic section sizes: Bad value
collect2: ld returned 1 exit status
make[2]: *** [/home/sjmunroe/work/build-23/linuxthreads/libpthread.so] 
Error 1

As an alternative I tried a single file using:

# if __WORDSIZE == 64
symbol_version (__novmx_longjmp,longjmp,GLIBC_2.3);
symbol_version (__novmx_siglongjmp,siglongjmp,GLIBC_2.3);
# else
symbol_version (__novmx_longjmp,longjmp,GLIBC_2.0);
symbol_version (__novmx_siglongjmp,siglongjmp,GLIBC_2.0);
# endif

which builds. I also combined the two Versions files into a single file @ 
./powerpc/Versions 

The same applies to the corresponding nplt patch.

Is this acceptable?

Steven J. Munroe
 Linux on PowerToolchain Architect
IBM Corporation, Linux Technology Center


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