# HG changeset patch # User Oleksandr Gavenko # Date 1252672153 -10800 # Node ID 635ce059b359c6ad97a588d79c7318d103859c29 # Parent 65ee0fe1723182a489f650f421aef5b653738a2a Remove dead code by gcc. diff -r 65ee0fe17231 -r 635ce059b359 gcc.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gcc.rst Fri Sep 11 15:29:13 2009 +0300 @@ -0,0 +1,31 @@ +-*- mode: outline; coding: utf-8 -*- + +* Remove dead code. + + STRIP_DEAD_CODE = -Wl,-static -fvtable-gc -fdata-sections -ffunction-sections -Wl,--gc-sections -Wl,-s + + -Wl,-static + Link against static libraries. Required for dead-code + elimination. + + -fvtable-gc + C++ virtual method table instrumented with garbage collection + information for the linker. + + -fdata-sections + Keeps data in separate data sections, so they can be discarded + if unused. + + -ffunction-sections + Keeps funcitons in separate data sections, so they can be + discarded if unused. + + -Wl,--gc-sections + Tell the linker to garbage collect and discard unused + sections. + + -s + Strip the debug information, so as to make the code as small + as possible. (I presume that you'd want to do this in a + dead-code removal build.) +