IA64 libc.so always depends on libunwind?

Jakub Jelinek jakub@redhat.com
Wed Apr 7 07:27:00 GMT 2004


On Tue, Apr 06, 2004 at 05:22:43PM -0700, David Mosberger wrote:
> >>>>> On Tue, 6 Apr 2004 17:15:13 -0700, "H. J. Lu" <hjl@lucon.org> said:
> 
>   HJ> The same is true for libgcc_s.so. But we link in libgcc_s.so
>   HJ> only when the executable needs exception-handling support.
> 
> Yes, but libgcc_eh.a is the archive version of libgcc_s.so, so you
> _do_ link in the unwinder into each and every binary.  Except that
> with libunwind, we don't want libunwind as part of libgcc_eh.a.

No, we don't.  I think that libgcc_eh.a is completely unnecessary during
libc.so link.
> 
>   HJ> For C, libgcc_s.so is not needed.
> 
>   HJ> Do all executables need exception-handling support on ia64?
> 
> No, it has nothing to do with ia64.  It has everything to do with
> libc now using exception-handling support (via the cleanup-handlers).

Unlike -lgcc_eh which is an archive only and thus not linked in if not needed,
-lunwind is also a shared lib and thus linked even when not needed.
So, either both -lgcc_eh and -lunwind should be nuked, or
--as-needed -lunwind --no-as-needed added instead of -lunwind.

	Jakub



More information about the Libc-alpha mailing list