I have a denormal fix without a branch but you probably don't want to see it ;-)
It's pretty simple, just OR the bits of the exponent together which gives either
0 (denormal) or 1, typecast that to float, and then multiply the original float
by that (0.0 or 1.0). Voila, no branch, but it is messy looking ;-)
Jan
On Thu, 24 Jun 2004 11:03 , Tim Blechmann <TimBlechmann(a)gmx.net> sent:
Since the
problem is denormalised numbers, has anybody thought of
adding a small DC offset (1e-15) or alternating the
addition/subraction of a small value?
of course it is possible to add a small dc
offset ... but what if we are
working in a feedback loop? or even worse with a high pass filter?
if you alter addition/substraction and send it throuth a low pass filer?
the denormal problem is not a trivial one, but afaik a macro like this
is the only one working for sure...
cheers .... tim
--
TimBlechmann@gmx.de','','','')">TimBlechmann@gmx.de
ICQ: 96771783
After one look at this planet any visitor from outer space
would say "I want to see the manager."