Build failures in powerpc32/powerpc64 related to _exit
Steve Munroe
sjmunroe@us.ibm.com
Mon Sep 16 15:53:00 GMT 2002
I pulled the cvs head this morning and saw the following on powerpc32
(and something similar for powerpc64):
/home/sjmunroe/work/build32-23/libc.so.6: undefined reference to
`__syscall_exit'
/home/sjmunroe/work/build32-23/libc.so.6: undefined reference to
`__GI__exit'
/home/sjmunroe/work/build32-23/libc.so.6: undefined reference to `_exit'
There are a number of issues but the two most interesting are:
1a) A libc_hidden_def(_exit) statement has been added to
./sysdeps/unix/sysv/linux/_exit.c
1b) A HIDDEN_JUMPTARGET(_exit) has been added to:
./sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S
(and ./sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S) which
generates the "__GI" prefix for _exit.
but ./include/unistd.h contains the following comment:
// XXX Normally we should be able to hide _exit. But in the thread library
// XXX we might need to overload this function so that all threads can be
// XXX killed.
// libc_hidden_proto (_exit)
Does any one know the final resolution of this? (will _exit be hidden or
not?)
The other issue is that powerpc32 does not define its own INLINE_SYSCALL
macro and the default INLINE_SYSCALL macro generates a reference to
__syscall_exit which is unresolved.
Is any one else working on this? Powerpc64 has its own INLINE_SYSCALL
macro and I could take a stab at it ...
More information about the Libc-alpha
mailing list