[PATCH] Fixup PPC symbol versioning for libgcc symbols

Franz Sirl Franz.Sirl-kernel@lauterbach.com
Tue Aug 20 02:23:00 GMT 2002


At 01:04 20.08.2002, Ulrich Drepper wrote:
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>Jack Howarth wrote:
>
>>     Franz said that he wrote in assembly for optimization,
>>to avoid typos in parameter passing and to tell the linker
>>it can use a local jump (@local).
>
>The latter should be possible in C.  If a function is marked hidden gcc 
>should make a local call.

With gcc-2.95? How? Or is this done by the assembler? If so, I have to 
confess I simply haven't tried that.

>What I'm concerned about since I cannot remember having seen it: is the 
>code omitted if support for old ABIs is not required?

Well, you made it difficult to remove the use of divdi3.c completely, since 
lldiv.c now uses __divdi3_internal directly. So you force people now to use 
glibc's divdi3.c on every platform, even though they didn't use it before 
(eg. ARM), but relied on libgcc. This move forced me to change the patch to 
create a sysdeps/powerpc/divdi3.c to postversion the symbols of the generic 
version. I think Jack has to change his revision of my patch to either 
version the symbols GLIBC_PRIVATE or to disable only the symbol_version 
lines if SHLIB_COMPAT doesn't match. In any case I added a _DIVDI3_C define 
to powerpc/divdi3.c, so that the generic version divdi3.c could be guarded 
against direct (unversioned) use in the future.

Franz.



More information about the Libc-alpha mailing list