Commit Graph

73 Commits

Author SHA1 Message Date
Abdulaziz Ghuloum 7002046c8e - added a way of making annotated procedures without invoking the
compiler.   (useful for a future project)
- refershed all boot files (because of added primitives)
- regenerated some autoconf files (to use newer version)
2009-05-11 01:35:38 +03:00
Abdulaziz Ghuloum 56ec093e05 make distcheck now works. Many thanks to Andreas Rottmann (rotty)
for the patches.
2009-04-07 02:15:32 +03:00
Abdulaziz Ghuloum 0ec9c9536e added missing copyrights from scheme files. 2009-01-09 11:40:55 +03:00
Abdulaziz Ghuloum 58d937c520 upgraded to using latest versions of autoconf, aclocal, and m4. 2008-09-13 15:16:14 -07:00
Abdulaziz Ghuloum c597e7a4b3 Added option for searching for socket and nanosleep in libraries
-lsocket and -lrt (makes it work on SunOS).
2008-09-08 14:43:47 -07:00
Abdulaziz Ghuloum acc9940379 fixed gc bug in 64-bit mode along with another 64-bit bug in the
assembler when addressing using special %eax/%rax instructions.
2008-07-21 22:07:31 -07:00
Abdulaziz Ghuloum badf83557f fixed rounding for rationals. 2008-07-07 00:22:14 -07:00
Abdulaziz Ghuloum d73dfd1287 - More work on the new optimizer
- Deleted old optimizer and changed the meaning of optimize level to
  be:
    0: bypass the optimizer
    1: copy propagation, constant folding, no inlining
    1: copy propagation, constant folding, with inlining
  The default is set to 1.
2008-06-29 12:35:34 -07:00
Abdulaziz Ghuloum 45346ef865 - Added cp0! including:
- (optimize-level [0,1,2])  and  ikarus -O[0,1,2]
       where -O0 = no optimizations
             -O1 = using old optimizer
             -O2 = using the new cp0 optimizer
       defaults to -O1 for now.
   - (cp0-size-limit n) which is the limit of the residual size for
     each inlining attempt
   - (cp0-effort-limit n) which is the limit on the effort expended 
     for each inlining attempt
   
- Rewrote the syntax-match macro to make use of the same technology
  used in syntax-case itself resulting in reduced code size.

- Added (system-value <symbol>) which returns the system value.
  E.g., (system-value 'car) => #<procedure car>
  This is pretty much the same as 
    (eval <symbol> (environment '(ikarus)))
  except that it does not involve compiling the expression or 
  consulting the library/expander systems.

- Fixed the fasl loader to make it understand complex numbers.
2008-06-28 02:25:44 -07:00
Abdulaziz Ghuloum 48100f3737 Added bitwise-and primop. 2008-01-19 15:44:38 -05:00
Abdulaziz Ghuloum 648991d793 cygwin does not have getaddrinfo so I added a compatibility
implementation in src/ikarus-getaddrinfo.[ch]
2007-12-26 22:28:48 -05:00
Abdulaziz Ghuloum 96625d1657 benchmarks were getting stale, many were not runnable. all updated.
a fresh benchmark run was taken.
2007-12-25 05:03:41 -05:00
Abdulaziz Ghuloum 6eb6bf750d Added a (process "cmd" "args" ...) procedure that execs cmd, passing
args to it, and returns 4 values: 
* the process's pid
* the process's standard-input-port  (for writing)
* the process's standard-output-port (for reading)
* the process's standard-error-port  (for reading)
See lab/process-example.ss for a sample usage.
2007-12-19 22:46:07 -05:00
Abdulaziz Ghuloum c855a0e600 Forgot to commit the 0.0.2 release. 2007-11-29 03:31:54 -05:00
Abdulaziz Ghuloum 5e71bb8550 Fixes bug 164884: benchmarks/Makefile shouldn't be in repo 2007-11-24 12:16:06 -05:00
Abdulaziz Ghuloum 5db5efaaf1 Updated benchmarks/benchall.ss script to use ../src/ikarus instead
of plain ikarus when running bench.ss
2007-11-24 04:42:42 -05:00
Abdulaziz Ghuloum fb804a24f4 Changed version to 0.0.2-rc1 and added benchmarks to distribution. 2007-11-23 20:50:28 -05:00
Abdulaziz Ghuloum 91c365d9a6 records/structs are an iota faster to collect. 2007-11-21 16:39:16 -05:00
Abdulaziz Ghuloum 499115a226 * Minor performance fix to previous deoptimization
* Appended current timelog.
2007-11-17 12:53:37 -05:00
Abdulaziz Ghuloum 3a3bc7dcc1 * keyboard interrupts are now continuable. 2007-11-15 13:40:36 -05:00
Abdulaziz Ghuloum 4c632e435b * changed implementation of $flonum->exact. 2007-11-14 20:45:37 -05:00
Abdulaziz Ghuloum a0ba3d3d4f Fixes bug 162436: Off-by-one in substring 2007-11-13 12:21:27 -05:00
Abdulaziz Ghuloum ef6b9c0bae * Comitted half-fix to exact->inexact regarding bug 162334.
- some of the generic arithmetic operations are still broken
    due to rounding errors.
2007-11-13 00:45:04 -05:00
Abdulaziz Ghuloum 564908d55d * Added a word-frequency benchmark. 2007-11-11 02:10:02 -05:00
Abdulaziz Ghuloum 6938657fad * Fixed bug 161749: (define-syntax (foo x) 12) does not work 2007-11-10 06:28:29 -05:00
Abdulaziz Ghuloum 97d9c4ca42 * improved performance for fl+, fl-, fl*, fl/, fl=?, fl<?, fl<=?, fl>? and fl>=?
- results in 
    45% reduction in runtime for fpsum
    43% reduction in runtime for fibfp
    29% reduction in runtime for pnpoly
    28% reduction in runtime for mbrot
  - and
    23% increase in compile time for nucleic
    11% increase in compile time for ray
    10% increase in compile time for fft
2007-11-08 12:07:48 -05:00
Abdulaziz Ghuloum bcd96a8dd4 * Added bytevector-ieee-double-native-ref/set! 2007-11-06 21:08:52 -05:00
Abdulaziz Ghuloum 9632e19032 Fixes bug 160395: missing import from r6r script reports bogus error. 2007-11-06 01:14:27 -05:00
Abdulaziz Ghuloum 8cabfa75a7 * timelog updated to show results of latest addition to compiler. 2007-11-05 23:09:08 -05:00
Abdulaziz Ghuloum 753838aeec * Fixed benchmarking tools. 2007-11-05 22:49:38 -05:00
Abdulaziz Ghuloum 24e142bc49 * Added benchmarks/summarize.pl to summarize benchmark results. 2007-11-05 17:21:53 -05:00
Abdulaziz Ghuloum 2246a2b901 * Added benchmark logging Makefile in benchmarks/ and two log files. 2007-11-05 16:56:44 -05:00
Abdulaziz Ghuloum 6b40f525d9 * removed benchmarks/BUGS because it's out of date.
* fixed benchmarks/README
2007-11-05 02:01:51 -05:00
Abdulaziz Ghuloum 0287c37a00 * updated benchmarks/README since quicksort now works. 2007-11-05 01:57:18 -05:00
Abdulaziz Ghuloum c4424f8de4 * Added info about "BUGS" in benchmarks/README. 2007-11-04 17:12:14 -05:00
Abdulaziz Ghuloum a1aa10fca9 * Fixed bugs in slatex and quicksort benchmarks (library implementation)
* compiler benchmark now works (taking 10 seconds to compile on this
  machine).
2007-11-04 17:00:11 -05:00
Abdulaziz Ghuloum 8be77bcd21 * Added README describing the directory contents and how to run
benchmarks under Ikarus.
2007-11-04 14:07:58 -05:00
Abdulaziz Ghuloum ab282428fe * Fixed benchmarks to work on (rnrs) libraries instead of the old
(r6rs) libraries.
2007-11-04 12:03:32 -05:00
Abdulaziz Ghuloum 54472a1994 * Added fxarithmetic-shift* procedures.
* Added trace examples in ikarus.trace.h
* slatex benchmark now compiles properly.
2007-09-15 00:14:47 -04:00
Abdulaziz Ghuloum 33c087a867 * Stack overflow is reinstated. fibc and other call/cc intensive
benchmarks now work.
2007-07-13 13:54:25 +03:00
Abdulaziz Ghuloum 327de19e3b * Added fft benchmark. 2007-06-18 18:04:02 +03:00
Abdulaziz Ghuloum d3b2ee35f3 * Added $fixnum->flonum (not working yet) 2007-06-18 14:06:13 +03:00
Abdulaziz Ghuloum cb4752df99 * Added flmax 2007-06-18 13:06:19 +03:00
Abdulaziz Ghuloum d04b4f4be8 * Added flround. 2007-06-18 13:01:45 +03:00
Abdulaziz Ghuloum baafbed761 * Added (r6rs i/o simple) library 2007-06-18 02:57:32 +03:00
Abdulaziz Ghuloum 551e5aa088 * Case-insensitive char cmp functions added. 2007-06-17 17:51:47 +03:00
Abdulaziz Ghuloum 1750aba832 * The CODE/digit assembly helper now accepts imm,imm memory reference. 2007-06-16 12:08:38 +03:00
Abdulaziz Ghuloum 6d8c626017 * Fixed a bug in (fl/ x) not inverting its argument. 2007-06-16 09:59:39 +03:00
Abdulaziz Ghuloum d4facf79d3 * Added some benchmarking data in benchmarks/BUGS 2007-06-15 08:59:49 +03:00
Abdulaziz Ghuloum 3acdcb6c04 * Added native support for $fl+, $fl-, $fl*, $fl/ 2007-06-15 08:53:34 +03:00