diff options
author | Tim Blechmann <timblech@users.sourceforge.net> | 2004-08-12 17:12:23 +0000 |
---|---|---|
committer | Tim Blechmann <timblech@users.sourceforge.net> | 2004-08-12 17:12:23 +0000 |
commit | 3cc77d0f383c8732228d6378f93c46e6e1233411 (patch) | |
tree | f98d91d9f1b0c07c08bb7cb41e8a5e02b39fc9f2 | |
parent | b9bd28638ceadcae8dd3e2acee590378f6eb2d3b (diff) |
denormal handling
svn path=/trunk/externals/ext13/; revision=1942
-rw-r--r-- | send13~.c | 12 | ||||
-rw-r--r-- | throw13~.c | 9 |
2 files changed, 20 insertions, 1 deletions
@@ -27,7 +27,17 @@ t_float *in = (t_float *)(w[1]); t_float *out = (t_float *)(w[2]); int n = (int)(w[3]); - while (n--) *out++ = *in++; + while (n--) + { + /* TB: denormal handling in pd >0.37-2 */ +#ifdef PD_BIGORSMALL + *out = (PD_BIGORSMALL(*in) ? 0 : *in); + out++; + in++; +#else + *out++ = *in++; +#endif + }; return (w+4); } @@ -30,7 +30,16 @@ if (out) { while (n--) + { + /* TB: denormal handling in pd >0.37-2 */ +#ifdef PD_BIGORSMALL + *out += (PD_BIGORSMALL(*in) ? 0 : *in); + out++; + in++; +#else *out++ += *in++; +#endif + } } return (w+4); } |