This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: trimming libgcj symbol exports
- From: Jakob Praher <jpraher at yahoo dot de>
- To: "java at gcc dot gnu dot org" <java at gcc dot gnu dot org>,Anthony Green <green at redhat dot com>
- Date: Mon, 01 Aug 2005 13:51:30 +0200
- Subject: Re: trimming libgcj symbol exports
- References: <1122654609.2972.56.camel@to-dhcp6.toronto.redhat.com>
hi anthony,
Am Freitag, den 29.07.2005, 09:30 -0700 schrieb Anthony Green:
> Has anybody looked at using ld version scripts to trim down the number
> of symbols we export from libgcj.so?
>
I haven't. Do you mean the linker control scripts - this is the term I
know about.
> I suspect the attached version script can trim on the order of 15,000
> symbols from the .so. Unfortunately it causes ld to segv on my FC4
> machine.
Though stripping symbols is a good idea, I think you have to be careful
since ld-linux.so needs symbols to do relocation internally.
Perhaps not stripping but making them internal would be better. What
does that do btw to the elf symbols. If you strip them are they
completly deleted from the elf symbol tables? If so that might not be
the thing you want for internal purposes like filling in the got table.
-- Jakob
>
> The idea here is to trim out symbols from boehm-gc, libffi, internal
> gnu.* packages, zlib, etc. There are a lot of them!
>
> {
> global:
> extern "C++" {
> java*;
> org::*;
> _Jv_*;
> Jv*;
> gnu::java::rmi*;
> gnu::gcj::RawData*;
> gnu::gcj::runtime::StringBuffer*;
> gnu::gcj::runtime::PersistentByteMap*;
> gnu::gcj::convert::Convert*;
> __gcj_personality_v0;
> gcj::verifyClasses;
> };
> _ZTVN4java*;
> _ZTVN5javax*;
> _ZTVN3org*;
> JNI_*;
> local: *;
> };
>
>
--
Jakob Praher <jpraher@yahoo.de>