egcs & extern inline

Geoff Keating geoffk@ozemail.com.au
Wed Feb 10 19:40:00 GMT 1999


> From: "Mark M. Kettenis" <kettenis@wins.uva.nl>

>    [I might add that in ld.so there are indeed some functions that must
>    be inlined or ld.so won't work on some machines.]
> 
> You mean that we let Linux kernel hackers touch our dynamic linker
> :-)?  Seriously, it's bad, since the compiler does not guarantee that
> they are indeed inlined.  If they are ``extern inlines'' and we don't
> provide real defenitions than a build of ld.so will simply fail.  We
> can probably live with that.  Otherwise, those inline functions should
> be replaced by function-like macros.

No, they're "static inline", but if they don't get inlined in some
places (particularly elf_machine_rel* into _dl_start in rtld.c) then
ld.so will crash on startup on some machines, IIRC (not powerpc, though).

I don't think replacing them with macros is really a good idea.  It
may make things less reliable overall, because it would make them very
hard to maintain.

-- 
Geoffrey Keating <geoffk@ozemail.com.au>



More information about the Libc-hacker mailing list