strength reduction optimizations

strength reduction optimizations

Is it reasonable to assume most modern compilers will see float**2 and replace it with float*float? I'm trying to improve the readability of someone else's code, without sacrificing performance, although I'm sure it's been quite some time since the code has been profiled on current hardware.

3 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

just to clarify, the actual variable is a multidimensional array with a longer name, and is being indexed/sliced, so typing the equivalent of float*float is much longer than typing the exponentiation.

Yes, all high quallty Fortran compilers I've seen in the last decade are expanding and optimizing **2 (some will do it even with the decimal point implying a real data type exponent).
You could try a limited test, simply assure that no exponentiation function call is introduced when you run nm on the .o file.

Leave a Comment

Please sign in to add a comment. Not a member? Join today