Developer Guide and Reference

Contents

fast-transcendentals, Qfast-transcendentals

Enables the compiler to replace calls to transcendental functions with faster but less precise implementations.

Syntax

Linux and macOS:
-fast-transcendentals
-no-fast-transcendentals
Windows:
/Qfast-transcendentals
/Qfast-transcendentals-
Arguments
None
Default
depends on the setting of
-fp-model
(Linux* and
macOS*
)
or
/fp
(Windows*)
If you do not specify option
-[no-]fast-transcendentals
or option /Qfast-transcendentals[-]
:
  • The default is ON if option
    -fp-model fast
    or
    /fp:fast
    is specified or is in effect.
  • The default is OFF if a value-safe setting is specified for
    -fp-model
    or
    /fp
    (such as "precise", "source", etc.).
Description
This option enables the compiler to replace calls to transcendental functions with implementations that may be faster but less precise.
It allows the compiler to perform certain optimizations on transcendental functions, such as replacing individual calls to sine in a loop with a single call to a less precise vectorized sine library routine. These optimizations can cause numerical differences that would not otherwise exist if you are also compiling with a value-safe option such as
-fp-model precise
(Linux* and macOS*) or
/fp:precise
(Windows).
For example, you may get different results if you specify option
O0
versus option
O2
, or you may get different results from calling the same function with the same input