opt_strength_reduction_strict

Uses a safer variation of strength reduction optimization.

Syntax

#pragma opt_strength_reduction_strict on | off | reset

Targets
All platforms.
Remarks

Like the pragma opt_strength_reduction, 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. To check this setting, use __option (opt_strength_reduction_strict), described in Checking Settings. The default varies according to the compiler.