This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: vtrelocs: large/modular C++ app speedup ...
- From: Ian Lance Taylor <iant at google dot com>
- To: michael dot meeks at novell dot com
- Cc: binutils at sources dot redhat dot com, libc-alpha at sources dot redhat dot com, gcc at gcc dot gnu dot org
- Date: Wed, 02 Apr 2008 07:56:17 -0700
- Subject: Re: vtrelocs: large/modular C++ app speedup ...
- References: <1207135768.31285.26.camel@t60sled.site>
Michael Meeks <michael.meeks@novell.com> writes:
> Since almost all function relocations of this type are inside vtables,
> I implemented a new way of relocating vtables. This is a new
> '.suse.vtrelocs' section.
It's an interesting idea. Some comments:
* Use GNU instead of SUSE, as this is for the GNU tools.
* Don't check for explicit section names. Instead, give the section a
magic type.
* It seems that this is not backward compatible--an executable built
in this way will not work if the dynamic linker does not know about
it. The section should have the SHF_OS_NONCONFORMING bit set.
* Aren't you going to get a lot of duplicate vtreloc entries?
Shouldn't they be grouped with the vtables themselves?
* The idea is useless without support in the dynamic linker, so you
need to get signoff there first.
Ian