Enables the linker to communicate with the compiler to eliminate unused functions.
is the feedback file created by a previous execution of the ARM linker.
You can perform multiple compilations using the same feedback file. The compiler places
each unused function identified in the feedback file into its own ELF section in the
corresponding object file.
The feedback file contains information about a previous build. Because of this:
The feedback file might be out of date. That is, a function previously identified as
being unused might be used in the current source code. The linker removes the code for
an unused function only if it is not used in the current source code.
For this reason, eliminating unused functions using linker feedback is a safe
optimization, but there might be a small impact on code size.
The usage requirements for reducing compilation required for interworking are
more strict than for eliminating unused functions. If you are reducing
interworking compilation, it is critical that you keep your feedback file up to
date with the source code that it was generated from.
You have to do a full compile and link at least twice to get the maximum benefit from
linker feedback. However, a single compile and link using feedback from a previous build
is usually sufficient.