opt_strength_reduction_strict

Uses a safer variation of strength reduction optimization.

Syntax
#pragma opt_strength_reduction_strict on | off | reset
  
Remarks

Like the opt_strength_reduction pragma, this setting replaces multiplication instructions that are inside loops with addition instructions to speed up the loops. However, unlike the regular strength reduction optimization, this variation ensures that the optimization is only applied when the array element arithmetic is not of an unsigned type that is smaller than a pointer type.

This pragma does not correspond to any panel setting. The default varies according to the compiler.

Related information
global_optimizer
ipa
ipa_inline_max_auto_size
ipa_not_complete
load_store_elimination
opt_common_subs
opt_dead_assignments
opt_dead_code
opt_lifetimes
opt_loop_invariants
opt_propagation
opt_strength_reduction
opt_unroll_loops
opt_vectorize_loops
optimization_level
optimize_for_size
optimizewithasm
pack
strictheaderchecking