Commit Graph

29 Commits (001ac7fbcd703c084b6f402048d30cd58debf58d)

Author SHA1 Message Date
Slava Pestov f27080498d Remove bignum>float VM primitive, and use bignum/f to implement >float on bignums instead, for a slight accuracy gain. Also, bignum/f now has a more efficient post-scaling algorithm to break the circular dependency on bignum>float 2010-11-24 22:41:15 -08:00
Slava Pestov 65dcd56b0b math.integers: fix 0 0 bignum/f (reported by Joe Groff) 2010-11-12 19:49:18 -08:00
Slava Pestov 1985705413 compiler: now that FFI has been deconcatenatized, we no longer need the special ##unary-float-function and ##binary-float-function fastpaths 2010-08-13 23:59:19 -07:00
Slava Pestov df4fb4a3ee Removing integers-as-sequences 2010-01-15 07:15:33 +13:00
Slava Pestov 47a5e96547 Rework min and max so that behavior with floats and NaNs is consistent between generic arithmetic and open-coded float intrinsics 2010-01-13 22:20:16 +13:00
Keith Lazuka 405e5d015b docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Slava Pestov 32b95c2cdf math: add unordered comparison operators u< u<= u> u>= which behave exactly like < <= > >= except no floating point exceptions are set if one or both inputs are NaNs; also add efficient intrinsic for unordered? predicate, and fix propagation type functions for abs, absq, and bitnot 2009-09-12 22:20:13 -05:00
Slava Pestov 11f984e734 math.floats: fix abs on floats; -0.0 abs should be 0.0 not -0.0 2009-09-12 16:24:07 -05:00
Joe Groff 14f412b404 add an "unordered?" predicate to math, with a dumb implementation for now 2009-09-10 23:45:18 -04:00
Slava Pestov 2bb6293217 compiler: add fixnum-min/max intrinsics; ~10% speedup on benchmark.yuv-to-rgb 2009-08-28 19:02:59 -05:00
Slava Pestov d957ae4e44 Performance improvements to make struct-arrays benchmark faster
- improved optimization of ##unbox-any-c-ptr on ##box-displaced-alien; convert it to ##unbox-c-ptr where possible using class info stored in the ##bda instruction
- make fcos, fsin, etc inline again; everything in math.libm inline again, except for fsqrt which is an intrinsic
- convert min and max on floats to float-min and float-max
- make min and max not inline, so that the above can work
- struct-arrays: rice a bit so that more fixnums come up
2009-08-28 05:21:16 -05:00
Slava Pestov 79cdc45339 math: move float methods to math.floats 2009-08-20 03:55:19 -05:00
Daniel Ehrenberg 8120bdebea Merge branch 'master' of git://factorcode.org/git/factor 2009-08-18 00:02:29 -05:00
Daniel Ehrenberg 62cd1d280c Fixing docs typo in math.floats 2009-08-18 00:02:19 -05:00
Slava Pestov 030b1b816c Add inline declarations for various assorted methods 2009-08-17 22:32:21 -05:00
Joe Groff f034be3c9e nitpick 2009-07-24 21:04:49 -05:00
Doug Coleman 01a0bf7c36 add more links to floating point words in docs 2009-07-24 18:11:51 -05:00
Doug Coleman 0ad6d1fb7b add a few usages of iota, remove most 1+ and 1- from core 2009-05-01 19:58:24 -05:00
Slava Pestov 0ffd43e2e3 1.0/0.0 => 1/0. 2009-04-13 19:48:08 -05:00
Slava Pestov ca2f01e0d0 Updating non-core libraries for monotonic? change 2009-01-16 17:02:54 -06:00
Aaron Schaefer ca73c06194 Fix documentation example for floats 2008-12-04 00:36:11 -05:00
Slava Pestov 267ab0aa4d Implement /i on floats 2008-11-29 12:21:26 -06:00
Slava Pestov c19f2257f4 Fix permission bits 2008-10-02 08:34:49 -05:00
Slava Pestov 110a5e5162 Change equality semantics 2008-09-02 02:02:05 -05:00
Slava Pestov 685d53e264 Add gather word; faster 'implementors' using inverted index 2008-06-12 05:49:46 -05:00
Slava Pestov 08af497255 Fix /f for large integers 2008-04-28 21:26:31 -05:00
Slava Pestov e98cd1fd59 New convention for unit tests 2008-03-01 17:00:45 -05:00
U-SLAVA-FB3999113\Slava e9b42fa635 Move more math stuff to extra/, get compiler to work without ratios/complex numbers 2007-10-14 20:38:23 -04:00
Slava Pestov a96457cecc Initial import 2007-09-20 18:09:08 -04:00