-opt

Specifies code optimization options to apply to object code.

Syntax
  -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:

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.