On 08/02/2012 02:06 PM, Harry van Haaren wrote:
IIRC those CPU/Compiler FlushToZero workarounds only work with SSE. try
adding `-msse -mfpmath=sse` to the CFLAGS.
> I'm not sure where to look next to fix the problem. Help appreciated!
Simply add a small value to the every input sample (before it enters the
IR or filter stage). -- Small being around (1e-20).
Alternatively you could use some "if" clauses
#define DENORMALTOZERO(x) \
if (((*(unsigned int *) &(x)) & 0x7f800000) == 0) x = 0;
#define SMALLVALUETOZERO(x) \
if (x < 1e-30) x = 0;
More info is at http://carlh.net/plugins/denormals.php
Linux-audio-dev mailing list