2.7. 使用链接器反馈

链接器反馈可以有效地消除未使用的函数。 在以下情况下会出现未使用的函数代码:

要向编译器提供链接器反馈,必须在单独的步骤中链接代码,并使用 armlink 选项 --feedback=filename 创建反馈文件。 此后,可以使用编译器选项 --feedback=filename,将此文件用作编译器的输入。

Note

要从链接器反馈获得最大益处,必须执行至少两次完全编译和链接。 通常,使用上次构建中的反馈进行单次编译和链接就已受益匪浅。

即便反馈文件不存在,也能指定 --feedback=filename 选项。 这样,无论反馈文件存在与否,都能使用同一个构建文件或 make 文件,例如:


armcc -c --feedback=unused.txt test.c -o test.o

armlink --feedback=unused.txt test.o -o test.axf

首次构建应用程序时会正常编译,但编译器会发出警告,指示因指定的反馈文件不存在而无法读取。 此后,链接命令将创建反馈文件并构建映像。 每个随后的编译步骤都使用前一链接步骤的反馈文件来删除识别的所有未使用函数。

有关详细信息,请参阅:

Copyright © 2002-2007 ARM Limited. All rights reserved. ARM DUI 0205HC
Non-Confidential