fix broken fixnum bitops
parent
e0590377ff
commit
547a070b66
|
|
@ -19,3 +19,4 @@ USE: test
|
||||||
[ -1 ] [ 123 >bignum dup bitnot bitxor ] unit-test
|
[ -1 ] [ 123 >bignum dup bitnot bitxor ] unit-test
|
||||||
[ -1 ] [ 123 dup bitnot >bignum bitxor ] unit-test
|
[ -1 ] [ 123 dup bitnot >bignum bitxor ] unit-test
|
||||||
[ -1 ] [ 123 dup bitnot bitxor >bignum ] unit-test
|
[ -1 ] [ 123 dup bitnot bitxor >bignum ] unit-test
|
||||||
|
[ 4 ] [ 4 7 bitand ] unit-test
|
||||||
|
|
|
||||||
|
|
@ -136,17 +136,17 @@ CELL divide_fixnum(FIXNUM x, FIXNUM y)
|
||||||
|
|
||||||
CELL and_fixnum(FIXNUM x, FIXNUM y)
|
CELL and_fixnum(FIXNUM x, FIXNUM y)
|
||||||
{
|
{
|
||||||
return x & y;
|
return tag_fixnum(x & y);
|
||||||
}
|
}
|
||||||
|
|
||||||
CELL or_fixnum(FIXNUM x, FIXNUM y)
|
CELL or_fixnum(FIXNUM x, FIXNUM y)
|
||||||
{
|
{
|
||||||
return x | y;
|
return tag_fixnum(x | y);
|
||||||
}
|
}
|
||||||
|
|
||||||
CELL xor_fixnum(FIXNUM x, FIXNUM y)
|
CELL xor_fixnum(FIXNUM x, FIXNUM y)
|
||||||
{
|
{
|
||||||
return x ^ y;
|
return tag_fixnum(x ^ y);
|
||||||
}
|
}
|
||||||
|
|
||||||
CELL shift_fixnum(FIXNUM x, FIXNUM y)
|
CELL shift_fixnum(FIXNUM x, FIXNUM y)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue