* libguile/vm-i-scheme.c (INUM_MAX, INUM_MIN): New macros.
(add1, sub1): Add/subtract without untagging the operand. This leads
to a 44% run time improvement compared to the previous
implementation.
* libguile/vm.c: Include <stdint.h>.
* test-suite/tests/numbers.test ("1+", "1-"): Add tests for
MOST-POSITIVE-FIXNUM, resp. MOST-NEGATIVE-FIXNUM, for 32-bit and
34-bit values thereof.
* benchmark-suite/benchmarks/arithmetic.bm: New file.
* benchmark-suite/Makefile.am (SCM_BENCHMARKS): Add it.
20 lines
613 B
Makefile
20 lines
613 B
Makefile
SCM_BENCHMARKS = benchmarks/0-reference.bm \
|
|
benchmarks/arithmetic.bm \
|
|
benchmarks/bytevectors.bm \
|
|
benchmarks/chars.bm \
|
|
benchmarks/continuations.bm \
|
|
benchmarks/if.bm \
|
|
benchmarks/logand.bm \
|
|
benchmarks/ports.bm \
|
|
benchmarks/read.bm \
|
|
benchmarks/srfi-1.bm \
|
|
benchmarks/srfi-13.bm \
|
|
benchmarks/structs.bm \
|
|
benchmarks/subr.bm \
|
|
benchmarks/uniform-vector-read.bm \
|
|
benchmarks/vectors.bm \
|
|
benchmarks/vlists.bm \
|
|
benchmarks/write.bm
|
|
|
|
EXTRA_DIST = guile-benchmark lib.scm $(SCM_BENCHMARKS) \
|
|
ChangeLog-2008
|