On Sat, 2009-08-15 at 06:48 -0700, Ed Kelly wrote:
> Hi Damon,
>
> I have tried to implement this technique, to fix the svf~ and I am still
> getting denormal errors pegging the CPU. Is there anything I have missed do
> you think? After reading a little bit about unions and uint32_t I think I've
> used them correctly...
>
> If this bug can be zapped for good then I'd like to eliminate denormal errors
> from the svn for good!
Maybe you didn't get all the denormals. You could try adding checks for
denormals throughout the code (just while debugging), using something
like:
static inline check_for_denormal (float value)
{
union {
float value;
uint32_t i;
} u;
u.value = value;
/* A denormal has a 0 exponent and a non-0 mantissa, so check that
the value has a non-zero exponent or a 0 mantissa. */
assert ((u.i & 0x7F800000) != 0 || (u.i & 0x007FFFFF) == 0)
}
Damon
_______________________________________________
Pd-dev mailing list
[email protected]
http://lists.puredata.info/listinfo/pd-dev