dead function elimination
Thu Nov 9 10:15:00 GMT 2006
> Nick Clifton wrote:
> > Hi Jimmy,
> >> Can gcc or ld perform dead procedure elimination apart from using the
> >> combination of --gc-sections/-ffunction-sections?
> > (Why are you excluding the --gc-sections / -ffunction-sections pairing
> > which were designed precisely for this purpose ?)
> > The short answer is yes. Gcc can and will eliminate unused local
> > procedures, and with its --whole-program option it can even eliminate
> > unused non-local procedures.
> > But your question implies that you are asking if between them the linker
> > and compiler can eliminate unused procedures without recompilation of
> > all the sources, and in this case the answer is no.
> I thght the linker alone was supposed to be able to do
> dead-procedure-elimination. After all can't the linker determine which
> procedures are unreferenced in the final executable?
> If i'm not mistaken the diablo linker can do this?
GNU ld can do this too. It does it if you compile with
More information about the Binutils