State of the Art Denormal Prevention

Oh yes, i didn't realized there is something similar. However, this also adds (similar)  DAZ (Denormals are Zero) flag, and resets the old behavior. 

And FloatVectorOperations is maybe misleading, because the newer compilers (from VS2012, XCode) using SSE for all float-operations per default.

 

How to check if denormals are currently used:

  float f=std::numeric_limits<float>::min()*0.5f; 

  jassert (f==0); // you cannot do this in a one line, would be optimized away

            

  double d=std::numeric_limits<double>::min()*0.5;

  jassert (d==0);

 

 

Other infos:

http://carlh.net/plugins/denormals.php

 

 

1 Like