从可执行文件中删除死代码

时间:2012-08-13 20:56:29

标签: c gcc ld

我的目标是从可执行文件中删除尽可能多的死代码以减少代码大小。我在Stack Overflow上关注了一些其他问题的一些技巧,并在我的makefile中使用了-fdata-sections -ffunction-sections... + ...--gc-sections。但是我有一个问题。

我首先使用.o作为标志编译我的所有-fdata-sections -ffunction-sections。然后我将这些存档到一个静态库(lib.a)。然后我构建链接此lib.a并使用此链接器中的--gc-sections标志的可执行文件。然而,这似乎没有做任何改进。这是因为我先归档吗?归档是否会消除拆分的影响? (另外,我使用的任何形式的“条带”似乎都不会影响可执行文件!)

0 个答案:

没有答案