- fixed a bug in bytevector-ieee-double-ref which only showed up
under the followingconditions: - ikarus is compiled as 64-bit - index is a multiple of 8 - endianness is big.
This commit is contained in:
parent
c027b1da34
commit
5c3168d502
|
@ -1 +1 @@
|
|||
1673
|
||||
1674
|
||||
|
|
|
@ -2004,9 +2004,11 @@
|
|||
[floff (- disp-flonum-data vector-tag)])
|
||||
(with-tmp ([x (prm 'alloc (K (align flonum-size)) (K vector-tag))])
|
||||
(prm 'mset x (K (- vector-tag)) (K flonum-tag))
|
||||
(with-tmp ([x0 (prm 'mref (T bv) (K bvoff))])
|
||||
(prm 'bswap! x0 x0)
|
||||
(prm 'mset x (K floff) x0))
|
||||
(with-tmp ([t (prm 'int+ (T bv)
|
||||
(prm 'sra (T i) (K fx-shift)))])
|
||||
(with-tmp ([x0 (prm 'mref t (K bvoff))])
|
||||
(prm 'bswap! x0 x0)
|
||||
(prm 'mset x (K floff) x0)))
|
||||
x))])])
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue