ColdFire uClinux Compiler > Optimization

Use this panel to control compiler optimizations. The compiler's optimizer can apply any of its optimizations in either global or non-global optimization mode. You can apply global optimization at the end of the development cycle, after compiling and optimizing all source files individually or in groups.

The table below lists and describes the options for the Optimization panel.

Table 1. ColdFire uClinux Compiler > Optimization Options
Option Description
Optimization Level Specify the optimizations that you want the compiler to apply to the generated object code:
  • None (-O0) - Disable optimizations. This setting is equivalent to specifying the -O0 command-line option. The compiler generates unoptimized, linear assembly-language code.
  • Optimize (-O1) - The compiler performs all target-independent (that is, non-parallelized) optimizations, such as function inlining. This setting is equivalent to specifying the -O1 command-line option.

    The compiler omits all target-specific optimizations and generates linear assembly-language code.

  • Optimize more (-O2) - The compiler performs all optimizations (both target-independent and target-specific). This setting is equivalent to specifying the -O2 command-line option. The compiler outputs optimized, non-linear, parallelized assembly-language code.
  • Optimize most (-O3) - The compiler performs all the level 2 optimizations, then the low-level optimizer performs global-algorithm register allocation. This setting is equivalent to specifying the -O3 command-line option. At this optimization level, the compiler generates code that is usually faster than the code generated from level -O2 optimizations.
Other optimization flags Specify other optimization flags, like -Os (optimize for size) or specific optimizations if you would like to do a "fine-tuning" of optimizations.