This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: dead function elimination


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.

Cheers
  Nick

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?


Thanks!
-jb
--
mathematician, n.:
Some one who believes imaginary things appear right before your i's.





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]