Remove dead code by gcc.
authorOleksandr Gavenko <gavenkoa@gmail.com>
Fri, 11 Sep 2009 15:29:13 +0300
changeset 193 635ce059b359
parent 192 65ee0fe17231
child 194 c9a5f5dad40d
Remove dead code by gcc.
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.)
+