* Added $flonum-sbe primop for extracting the signed-biased-exponent
of a flonum.
This commit is contained in:
parent
82eda09ea0
commit
79c31416cf
|
@ -433,6 +433,7 @@
|
||||||
[$fl>= $flonums]
|
[$fl>= $flonums]
|
||||||
[$flround $flonums]
|
[$flround $flonums]
|
||||||
[$fixnum->flonum $flonums]
|
[$fixnum->flonum $flonums]
|
||||||
|
[$flonum-sbe $flonums]
|
||||||
[$make-bignum $bignums]
|
[$make-bignum $bignums]
|
||||||
[$bignum-positive? $bignums]
|
[$bignum-positive? $bignums]
|
||||||
[$bignum-size $bignums]
|
[$bignum-size $bignums]
|
||||||
|
|
|
@ -980,6 +980,15 @@
|
||||||
(prm 'fl:store x (K (- disp-flonum-data vector-tag)))
|
(prm 'fl:store x (K (- disp-flonum-data vector-tag)))
|
||||||
x))])
|
x))])
|
||||||
|
|
||||||
|
(define-primop $flonum-sbe unsafe
|
||||||
|
[(V x)
|
||||||
|
(prm 'sll
|
||||||
|
(prm 'srl
|
||||||
|
(prm 'mref (T x)
|
||||||
|
(K (- (+ disp-flonum-data 4) vector-tag)))
|
||||||
|
(K 20))
|
||||||
|
(K fixnum-shift))])
|
||||||
|
|
||||||
/section)
|
/section)
|
||||||
|
|
||||||
(section ;;; ratnums
|
(section ;;; ratnums
|
||||||
|
|
Loading…
Reference in New Issue