Subject: Re: fixing gcc RTL template library
To: Todd Vierling <>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: tech-toolchain
Date: 06/09/1999 15:54:35
>Exactly why would you have to yank any of the support functions from libc?

well, because 
	a) many of them are never used
	b) having them there is, clearly, confusing people
	c) it's just Wrong, as the person who did the initial
	   ``integration'' finally understood. 

These functions are not, repeat _not_ part of libc. They are ancillary
heplers for gcc. They implement functions required of any GCC .md
file, but where some architectures do not implement the functions
directly, libgcc2 provides a common software implementation.

And if someone uses a non-gcc compiler, there's always the remote
possibility of name clashes. They should never have been in libc in
the first place, but given the lack of a -freestanding switch in gcc
2.x, I guess its understandable.

>If a given operation is open coded, they should never be called, so what's
>the lossage?    (Remember that I haven't seen the start of this thread, though
>I have moved it to tech-toolchain with a Bcc to tech-net.)

The lossage?  Wasted space in kernel images.  Confusion, even from
Core members, about which libgcc2 functions acutally get used. Bogus
profiling info -- which, historically, has bitten several developers.

Plus, its simply not right, and we try and do the right thing. :)