--- /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.)
+