Flushing denormalised numbers to zero

audio, c++, visual-studio-2010, xcode

Solution

You're looking for a platform-defined way to set FTZ and/or DAZ in the MXCSR register (on x86 with SSE or x86-64); see https://stackoverflow.com/a/2487733/567292

Usually this is called something like `_controlfp`; Microsoft documentation is at http://msdn.microsoft.com/en-us/library/e9b52ceh.aspx

You can also use the `_MM_SET_FLUSH_ZERO_MODE` macro: http://msdn.microsoft.com/en-us/library/a8b5ts9s(v=vs.71).aspx - this is probably the most cross-platform portable method.

Problem

I've scoured the web to no avail. Is there a way for Xcode and Visual C++ to treat denormalised numbers as 0? I would have thought there's an option in the IDE preferences to turn on this option but can't seem to find it. I'm doing some cross-platform audio stuff and need to stop certain processors hogging resources. Cheers

Original source

Related problems