Commit Graph

123 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum ca27d8e626 * compiler and fasl-write and fasl-read now understand code
annotations
2007-10-10 04:41:11 -04:00
Abdulaziz Ghuloum 82a00e2628 * Fixed a bug in the GC that caused performance to degrade when
ik_alloc extends the heap (by 128KB) and the heap size remains set
  to that value (causing more frequent GCs than usual).  Now, after
  ik_collect, if the heapsize is less than 4MB, it's extended to
  4MB (minimum).
2007-09-15 01:54:45 -04:00
Abdulaziz Ghuloum 6b1860af65 * sll now works for all arguments. 2007-09-13 00:47:41 -04:00
Abdulaziz Ghuloum 3247c0641d * sll now supports shifting fixnums by any amount. 2007-09-13 00:08:41 -04:00
Abdulaziz Ghuloum 52a36d4c3f * Added sra, fixing the bignum shift bugs. 2007-09-12 23:34:21 -04:00
Abdulaziz Ghuloum ef1a828f1f * Fixed a bug in that caused exact->inexact to return nans when
given big ratnums.  E.g.
    (exact->inexact (/ (expt 2 3000) (- (expt 2 3000) 1)))
  now returns 1.0 instead of +nan.0
2007-09-12 19:08:45 -04:00
Abdulaziz Ghuloum 9d32ae5767 * ikarus-fasl.c can now read bignums. 2007-09-12 16:59:21 -04:00
Abdulaziz Ghuloum 888833f686 * Added flexpt 2007-09-12 03:56:08 -04:00
Abdulaziz Ghuloum 3ecf53f9fd * Added flexp 2007-09-10 23:36:36 -04:00
Abdulaziz Ghuloum 5007ef2d20 * Fixed linux build options in makefile. 2007-09-09 20:58:47 -04:00
Abdulaziz Ghuloum c811812726 * Added conditional build for linux. 2007-09-09 14:19:51 -04:00
Abdulaziz Ghuloum 1cd2b8acfc * Handling weak-pairs is now generational, fixing performance
problems when guardians were used to implement hash tables.
2007-09-06 22:45:20 -04:00
Abdulaziz Ghuloum 2c2b3eb1f1 * Added procedure-annotation primitive that returns the annotation
object stored in the closure's code.
2007-09-04 20:18:11 -04:00
Abdulaziz Ghuloum ad118623ec * Added $code-annotation and $set-code-annotation! primops 2007-09-04 19:59:14 -04:00
Abdulaziz Ghuloum 50dcf3a11f * disp-code-data changed from 16 to 24 in order to allow for future
code annotations.
2007-09-04 19:16:43 -04:00
Abdulaziz Ghuloum cb40f0ae3c * disp-bytevector-data changed to 8. 2007-09-04 01:40:31 -04:00
Abdulaziz Ghuloum 38a60b4d84 Added various geom functions to runtime including asin, acos, tan 2007-09-02 20:53:28 -04:00
Abdulaziz Ghuloum 51d512484b * Refixed implementation of guardians to handle dead tconcs
properly.
2007-09-01 20:14:05 -04:00
Abdulaziz Ghuloum 95f34409e6 * Slight improvement to the guardians' performance. 2007-09-01 01:21:11 -04:00
Abdulaziz Ghuloum 4daea5e4e0 * Added ikrt_register_guardian_pair to replace ikrt_register_guardian. 2007-09-01 01:00:35 -04:00
Abdulaziz Ghuloum 5667428e70 * reimplemented guardians (which now, incidentally, work). 2007-08-31 23:28:19 -04:00
Abdulaziz Ghuloum 22f3ce4f79 * Added a (collect-key) procedure that returns a string "k" that's
eq? to the value returned by (collect-key) until a garbage
  collection is performed.
2007-08-30 22:09:13 -04:00
Abdulaziz Ghuloum e20576a444 * Added a pcb field "collect_key" that simply gets set to #f
when garbage collection occurs.
2007-08-30 21:58:24 -04:00
Abdulaziz Ghuloum fc06fa7312 * Added ikrt_fxrandom function to the runtime system. 2007-08-30 21:44:52 -04:00
Abdulaziz Ghuloum f030e4e11d * Stats record now contains gc-info fields. 2007-08-30 12:54:21 -04:00
Abdulaziz Ghuloum 46755415b4 Added large object support for collecting large vectors 2007-08-30 12:01:54 -04:00
Abdulaziz Ghuloum 28b143036f Added time macro 2007-08-30 11:06:21 -04:00
Abdulaziz Ghuloum 2d9f5377ae * Some fixes to the runtime system.
modified:
  bin/ikarus
  bin/ikarus-fasl.c
  bin/ikarus-main.c
  bin/ikarus-runtime.c
  src/ikarus.boot
2007-08-29 01:45:10 -04:00
Abdulaziz Ghuloum d68e4283b9 * Added symlinks.
added:
  src/ikarus/
  src/ikarus/code-objects.ss@
  src/ikarus/compiler.ss@
  src/ikarus/fasl/
  src/ikarus/fasl/write.ss@
  src/ikarus/intel-assembler.ss@
2007-08-28 21:27:37 -04:00
Abdulaziz Ghuloum d1221276b9 Added vector-for-each 2007-08-28 17:24:53 -04:00
Abdulaziz Ghuloum bc3e216f63 * transition to non-consing add_one_tconc is done.
* Performance gains for making a hash table of 10,000,000 elements
  are:
  Before:    47secs       Now:  17secs.
2007-06-29 01:53:18 +03:00
Abdulaziz Ghuloum 5358680912 * tconc queue now uses 2-words per tconc in the transition to
non-allocating tconc_add procedure.
2007-06-29 01:46:27 +03:00
Abdulaziz Ghuloum 41e1859b2b * Fized a bug in the collector that caused tconc pages to never get
deallocated.  Tconc pages are now allocated from generation 1.
2007-06-29 01:32:16 +03:00
Abdulaziz Ghuloum d3b2ee35f3 * Added $fixnum->flonum (not working yet) 2007-06-18 14:06:13 +03:00
Abdulaziz Ghuloum ab6162d2a7 * Added string-foldcase and string-ci=? (inefficiently) 2007-06-18 02:49:40 +03:00
Abdulaziz Ghuloum b6779a0f87 * Added flonum fasl reader. 2007-06-14 19:48:57 +03:00
Abdulaziz Ghuloum 90feb453f5 * Added tests for bignum->flonum. 2007-06-10 20:32:48 +03:00
Abdulaziz Ghuloum 7246be795d * removed old flonum->string Scheme code and supporting C code. 2007-06-10 10:35:45 +03:00
Abdulaziz Ghuloum cccdd1122c * Added flonum->string using dybvig's algorithm. 2007-06-10 07:55:49 +03:00
Abdulaziz Ghuloum 0480517615 * Added floor/ceiling. 2007-06-10 07:32:19 +03:00
Abdulaziz Ghuloum 57f4d16ee2 * Added ikrt_fl_log and ikrt_fx_log to the vm. 2007-06-09 03:08:36 +03:00
Abdulaziz Ghuloum fb48ef12bd * disabled gzipped fasl files. too slow :-( 2007-05-22 19:01:07 -04:00
Abdulaziz Ghuloum 580481d8fc * The runtime system can now open gzipped bootfiles in addition to
uncompressed fasl files.
2007-05-22 17:56:15 -04:00
Abdulaziz Ghuloum 890dd348b2 * fasl files now may contain ascii strings as a special type in
order to reduce the size of the fasl file.  Gains: reduces the
  size of the current boot file from 2.9M down to 2.5M.
2007-05-21 23:09:45 -04:00
Abdulaziz Ghuloum 1abce54167 * string transition completed. string data is now 32-bit
tagged characters.
2007-05-19 14:38:45 -04:00
Abdulaziz Ghuloum 182de12428 * cleaned up some uses of naked strings in the runtime system. 2007-05-19 14:13:51 -04:00
Abdulaziz Ghuloum 267da9e77c * Writing strings to fasl files now uses 4-byte words for each
character.
2007-05-19 13:54:13 -04:00
Abdulaziz Ghuloum 1c4d3c4b40 * uuid now uses a bytevector for ffi. 2007-05-18 22:31:00 -04:00
Abdulaziz Ghuloum 027d50e84a * marked env and environ procedures busted. 2007-05-18 22:26:22 -04:00
Abdulaziz Ghuloum e499eb0f5a * delete-file now uses bytevectors for filename rep. 2007-05-18 22:21:36 -04:00