Re:Low Level Bit Hacks You Absolutely Must Know
by tripletao on Friday May 11, 2018 @11:53PM
(#17052397)
The trick is to let your "double" only take on values that are also valid 32-bit integers, like with lots of gratuitous (x|0) and stuff. That excludes your (indeed problematic) -0. JavaScript's semantics give you enough to implement 32-bit integer math this way pretty easily. The speed may vary dramatically with small changes to the compiler, but correctness won't.
[ Parent
| on HN ]
Re:Low Level Bit Hacks You Absolutely Must Know
by slededit on Saturday May 12, 2018 @12:21AM
(#17052453)
I still stick by my original point that:
((int)dblval) & flag
would require serious justification in a C code review. In JS its all you have. Under those restrictions I'd use it as rarely as possible. But yes you can use it correctly if you try.