gcc.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Fri, 11 Sep 2009 15:29:13 +0300
changeset 193 635ce059b359
child 194 c9a5f5dad40d
permissions -rw-r--r--
Remove dead code by gcc.

-*- 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.)