Daniel Gibson 8d26863a51 Improve some portable C implementations of math functions
* FloatToInt() should now  round correctly ot nearest, even for
  negative numbers
* Log2() now calls log2f() instead of log10()*3.321 - no idea what the
  previous code was about, I doubt it's faster (and the ASM code uses
  something like log2, too).
* FastLog2() (for integers) now uses __builtin_clz() when building with
  GCC/clang - the resulting ASM should be pretty similar to the inline
  ASM below. I wonder why that function takes signed ints, log2(-1) in
  reality is an irrational number (but the function returns 31)..
  Also, both the inline ASM and my version return 0 for Log2(0), but
  INT_MIN would be closer to the truth
* commented out FastMaxLog2(), it's unused.
* implemented _rotl() using a fast(er) trick from
  http://blog.regehr.org/archives/1063
2016-04-17 23:15:56 +02:00
..
2016-03-11 18:20:51 -06:00
2016-03-11 15:57:17 +02:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 15:57:17 +02:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 15:57:17 +02:00
2016-03-11 18:20:51 -06:00
2016-04-01 15:17:48 -04:00
2016-04-07 18:13:50 +02:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-04-06 13:38:09 +02:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00
2016-03-11 18:20:51 -06:00