You copied the Doc URL to your clipboard.
--lto_level
Sets the optimization level for the link time optimization feature.
Syntax
--lto_level=Olevel
Where
is one of the following:level
0
Minimum optimization for the performance of the compiled binary. Turns off most optimizations. When debugging is enabled, this option generates code that directly corresponds to the source code. Therefore, this might result in a significantly larger large image.
1
- Restricted optimization. When debugging is enabled, this option gives the best debug view for the trade-off between image size, performance, and debug.
2
- High optimization. When debugging is enabled, the debug view might be less
satisfactory because the mapping of object code to source code is not always
clear. The linker might perform optimizations that
cannot be described by debug information.
This is the default optimization level.
3
- Very high optimization. When debugging is enabled, this option typically gives a poor debug view. Arm recommends debugging at lower optimization levels.
fast
- Enables all the optimizations from level
3
including those performed with the-ffp-mode=fast
armclang option. This level also performs other aggressive optimizations that might violate strict compliance with language standards. max
- Maximum optimization. Specifically targets performance
optimization. Enables all the optimizations from level
fast
, together with other aggressive optimizations.CAUTION:
This option is not guaranteed to be fully standards-compliant for all code cases.Note
- Code-size, build-time, and the debug view can each be adversely affected when using this option.
- Arm cannot guarantee that the best performance optimization is achieved in all code cases.
s
- Performs optimizations to reduce code size, balancing code size against code speed.
z
- Performs optimizations to minimize image size.
Default
If you do not specify O
, the linker assumes level
O2
.