powerpc libc 2.2

Franz Sirl Franz.Sirl-kernel@lauterbach.com
Tue Jun 27 06:24:00 GMT 2000


On Mon, 26 Jun 2000, Geoff Keating wrote:
> > Cc: libc-alpha@sourceware.cygnus.com
> > Reply-To: drepper@cygnus.com (Ulrich Drepper)
> > From: Ulrich Drepper <drepper@redhat.com>
> > Date: 26 Jun 2000 11:41:05 -0700
> >
> > Geoff Keating <geoffk@cygnus.com> writes:
> > > For 2.2, glibc on powerpc will require a gcc newer than 2.95.* to
> >
> > You mean it needs the mainline sourceware compiler?
>
> Yes.  There's a bug in 2.95 involving asm and memory clobbers, another
> one involving complex results.  (As I mentioned before, there's the
> whole exception-handling issue too.)

I was able to compile it with the current gcc-2_95-branch+DWARFEH/PPC+a bunch 
of backported mainline patches. I try to get the backported patches into 
gcc-2.95.3-release. The testsuite passes with this compiler, except for:

gcc -nostdlib -nostartfiles -o /cvsx/glibc22/obj/elf/vismain  
-Wl,-dynamic-linker=/lib/ld.so.1   /cvsx/glibc22/obj/csu/crt1.o 
/cvsx/glibc22/obj/csu/crti.o `gcc --print-file-name=crtbegin.o` 
/cvsx/glibc22/obj/elf/vismain.o /cvsx/glibc22/obj/elf/vismod1.so 
/cvsx/glibc22/obj/elf/vismod2.so  
-Wl,-rpath-link=/cvsx/glibc22/obj:/cvsx/glibc22/obj/math:/cvsx/glibc22/obj/elf:/cvsx/glibc22/obj/dlfcn:/cvsx/glibc22/obj/nss:/cvsx/glibc22/obj/nis:/cvsx/glibc22/obj/rt:/cvsx/glibc22/obj/resolv:/cvsx/glibc22/obj/crypt:/cvsx/glibc22/obj/linuxthreads 
/cvsx/glibc22/obj/libc.so.6 /cvsx/glibc22/obj/libc_nonshared.a
-lgcc `gcc --print-file-name=crtend.o` /cvsx/glibc22/obj/csu/crtn.o
GCONV_PATH=/cvsx/glibc22/obj/iconvdata \
  LD_PRELOAD=/cvsx/glibc22/obj/elf/vismod3.so /cvsx/glibc22/obj/elf/ld.so.1 
--library-path 
/cvsx/glibc22/obj:/cvsx/glibc22/obj/math:/cvsx/glibc22/obj/elf:/cvsx/glibc22/obj/dlfcn:/cvsx/glibc22/obj/nss:/cvsx/glibc22/obj/nis:/cvsx/glibc22/obj/rt:/cvsx/glibc22/obj/resolv:/cvsx/glibc22/obj/crypt:/cvsx/glibc22/obj/linuxthreads 
/cvsx/glibc22/obj/elf/vismain  > /cvsx/glibc22/obj/elf/vismain.out
Didn't expect signal from child: got `Illegal instruction'
make[2]: *** [/cvsx/glibc22/obj/elf/vismain.out] Error 1

But this is probably because the binutils-2.9.5.0.41 is too old for the 
visibility stuff. I also needed the appended patch, due to the sudden rebirth 
of testandset :-).

Franz.


More information about the Libc-alpha mailing list