OSDN Git Service

Blue Swirl writes:
authorMike Frysinger <vapier@gentoo.org>
Sat, 15 Sep 2007 07:50:58 +0000 (07:50 -0000)
committerMike Frysinger <vapier@gentoo.org>
Sat, 15 Sep 2007 07:50:58 +0000 (07:50 -0000)
commitc0441bbed5d817b4f8f7f27f5d066760f73d6bbc
treef4bd2877dc770691e9bba20fb7e25c3d41e80067
parentd9ec80053e440a08251e88a50bfaa283d9e00795
Blue Swirl writes:
I got the library to compile with the attached patches, though dynamic
loader crashes early.

In buildroot I changed the architecture name by hand from sparc to
sparc64, otherwise the compiler produced 32-bit files with V9 (64-bit)
instructions. This configuration is not supported by QEMU, so I aimed
for pure 64-bit. I think Sparc64 option needs to be added to
buildroot.

The _Qp_ ops seem to be required by the ABI. This and setjmp patches
are just hacks to get the compilation further. The _Qp_ ops can be
found in glibc, would it be OK to use those?

V9 assembler requires declarations for global register use.

The mem* functions in sparc32 directory did not work. They are
actually used only by the hybrid 32-bit + V9 CPU configuration.
15 files changed:
ldso/include/dl-syscall.h
ldso/ldso/sparc/dl-startup.h
libc/string/sparc/sparc32/sparcv9b/memchr.S
libc/string/sparc/sparc32/sparcv9b/memcpy.S
libc/string/sparc/sparc32/sparcv9b/memset.S
libc/string/sparc/sparc32/sparcv9b/stpcpy.S
libc/string/sparc/sparc32/sparcv9b/strcat.S
libc/string/sparc/sparc32/sparcv9b/strchr.S
libc/string/sparc/sparc32/sparcv9b/strcmp.S
libc/string/sparc/sparc32/sparcv9b/strcpy.S
libc/string/sparc/sparc32/sparcv9b/strlen.S
libc/sysdeps/linux/sparc/Makefile.arch
libc/sysdeps/linux/sparc/__longjmp.S
libc/sysdeps/linux/sparc/_math_inc.h
libc/sysdeps/linux/sparc/bits/setjmp.h