Specifies code optimization options to apply to object code.
-optkeyword [,...]
The keyword arguments are:
off | none
Suppresses all optimizations. This is the default.
on
Same as -opt level=2
all | full
Same as -opt speed,level=4,intrinsics,noframe
l[evel]=num
Sets a specific optimization level. The options for num are:
#pragma optimization_level 0
#pragma optimization_level 1
#pragma optimization_level 2
optimization_level 3
#pragma optimization_level 4
For num options 0 through 4 inclusive, the default is 0.
[no]space
Optimizes object code for size. Equivalent to
#pragma optimize_for_size on
[no]speed
Optimizes object code for speed. Equivalent to
#pragma optimize_for_size off
[no]cse | [no]commonsubs
Common subexpression elimination. Equivalent to
#pragma opt_common_subs
[no]deadcode
Removes dead code. Equivalent to
#pragma opt_dead_code
[no]deadstore
Removes dead assignments. Equivalent to
#pragma opt_dead_assignments
[no]lifetimes
Computes variable lifetimes. Equivalent to
#pragma opt_lifetimes
[no]loop[invariants]
Removes loop invariants. Equivalent to
#pragma opt_loop_invariants
[no]prop[agation]
Propagation of constant and copy assignments. Equivalent to
#pragma opt_propagation
[no]strength
Strength reduction. Reducing multiplication by an array index variable to addition. Equivalent to
#pragma opt_strength_reduction.
[no]dead
Same as -opt [no]deadcode and [no]deadstore. Equivalent to
#pragma opt_dead_code on|off
#pragma opt_dead_assignments
[no]alias_by_type
Type based alias optimizations. Equivalent to
#pragma alias_by_type on|off
[no]peep[hole]
Peephole optimization. Equivalent to
#pragma peephole.
[no]schedule
Performs instruction scheduling.
display | dump
Displays complete list of active optimizations.