Alex Vondrak
f2034ba5c8
compiler.cfg.copy-prop: kludge to make sure ##phis get updated
2012-09-12 15:14:11 -07:00
Alex Vondrak
2afa20cc1a
move compiler.cfg.graphviz & compiler.cfg.gvn from basis to extra, just to keep organized
2012-09-12 15:14:07 -07:00
Alex Vondrak
b1eb7c74b3
compiler.cfg.graphviz: tweak code & output a little
2012-09-12 15:14:06 -07:00
Alex Vondrak
fa9c41b834
compiler.cfg.graphviz: refactoring
2012-09-12 15:14:06 -07:00
Alex Vondrak
384561b69a
add crappy experimental code for compiler.cfg.graphviz & compiler.cfg.gvn
2012-09-12 15:14:06 -07:00
John Benediktsson
4fc3b68f85
compiler.tree.propagation: fix >fraction types.
2012-09-11 07:42:39 -07:00
John Benediktsson
56a010441a
math.ratios: speed up some operations on ratios.
2012-09-10 19:53:25 -07:00
John Benediktsson
ddc047d161
compiler.tree.cleanup: fix "-1 shift" tests.
2012-09-10 19:24:23 -07:00
John Benediktsson
9992096028
math: cleaner "2/" speedup by using custom inlining.
2012-09-10 17:59:03 -07:00
John Benediktsson
834f9a8284
compiler.cfg.representations.selection: removing 10^ in favor of 10^.
2012-09-05 09:25:26 -07:00
Doug Coleman
ba51919e50
assocs: Add sift-keys and sift-values. Remove three other implementations
...
of sift-values and use the new one.
2012-08-23 22:36:10 -07:00
John Benediktsson
19d31a6fb0
layouts: defining "fixnum-bits".
2012-08-21 18:05:59 -07:00
Doug Coleman
d15a2357d1
core: Throw an error when assigning a bignum to a fixnum tuple slot if the bignum doesn't fit. Fixes #594 .
2012-08-03 14:59:59 -07:00
John Benediktsson
5de88bcd88
compiler.cfg: don't need to escape the symbol here.
2012-08-02 15:14:42 -07:00
John Benediktsson
1ac7188486
compiler.codegen: instruction counter is a global.
2012-08-02 15:06:04 -07:00
Doug Coleman
a6c3ddf691
sequences: Fix tests that broke when nth could only be integers. Undo integer>fixnum in iota nth. See bug #582 .
2012-07-25 22:17:24 -07:00
Doug Coleman
80b7014ae1
modular-arithmetic: Fix unit test. Should expect integer>fixnum, not >fixnum.
2012-07-23 11:51:44 -07:00
Doug Coleman
c25d044788
compiler: Fix bitand on ratios, floats. Fix shift on ratios, floats. Add integer>fixnum. Fixes #500 .
2012-07-23 09:31:12 -07:00
John Benediktsson
e654e4afd9
Using "same?" in more places.
2012-07-21 10:22:44 -07:00
Doug Coleman
bc35335a0c
compiler: Fix /mod simplications in dead-code, add unit tests. Fixes #544
2012-07-21 03:41:42 -07:00
Doug Coleman
2e43fab284
stack-checker: meta-d was a word and symbol, now meta-d word and (meta-d) symbol
...
issuse #358
2012-07-20 12:30:14 -07:00
Doug Coleman
06afe04f73
compiler.tree.debugger: Remove make-assoc
2012-07-19 17:48:02 -07:00
John Benediktsson
7104c2d7b9
using the new H{ } make.
2012-07-19 09:50:09 -07:00
Doug Coleman
9a220ef78c
namespaces: Rename ``bind`` to ``with-variables``. Update a few places that called ``global [ ] with-variables`` to use ``with-global``.
2012-07-19 00:02:47 -07:00
Doug Coleman
795c9ed26a
issue #358 : fix a couple compiler errors
2012-06-21 08:35:47 -07:00
Doug Coleman
117d57ad92
issue #358 : Rename all of the words depends-on-* to add-depends-on*
2012-06-21 08:35:45 -07:00
John Benediktsson
1a72249983
math: using if-zero in more places.
2012-06-18 14:32:39 -07:00
Doug Coleman
cb42258144
classes:
...
- Allow methods to dispatch off union{ } and intersection{ } classes.
- Add not{ } anonymous-complement syntax.
- Define class-name for anonymous-union/intersection/complement and maybes, and clean up pprint.
- Change maybe: foo to maybe{ foo }
- Call sort-classes when making anonymous-union/anonymous-intersection classes so that they are canonicalized.
2012-05-03 19:45:30 -07:00
Joe Groff
23eb2eaa1b
fix compiler.codegen tests
2011-12-14 12:51:12 -08:00
Joe Groff
84e817ef95
compiler.constants: remove unused constants
2011-12-14 09:56:45 -08:00
Joe Groff
9186a1bdf3
vm: store stack frame size in code blocks
...
Change modify-code-heap primitive so it takes a sixth element in each array for the frame size.
2011-12-14 09:56:45 -08:00
Joe Groff
7dbdc54052
command-line: don't pull in tools.errors
...
tools.errors brings the debugger with it, which bloats deploy image size
2011-12-07 10:52:58 -08:00
Joe Groff
881f9ba3f1
compiler: fix failing test
2011-12-06 21:11:44 -08:00
Doug Coleman
e884ce357e
compiler: The non-optimizing compiler is too slow with smart combinators in the compiler. Speed up bootstrap by not using them.
2011-12-05 14:50:51 -08:00
Doug Coleman
664239e1ba
generalizations: Refactor stack-checker so that smart combinators can be used with curry and compose.
2011-11-27 20:25:22 -08:00
Joe Groff
eee483654a
use radix literals
2011-11-23 19:03:40 -08:00
Joe Groff
b1a5477969
compiler.cfg.finalization: reenable scheduling
...
Prolog safepoint appears to work with it enabled
2011-11-23 11:11:27 -08:00
Joe Groff
62e665bb88
compiler: emit safepoints in optimized prologs
2011-11-23 11:11:25 -08:00
Doug Coleman
61c1277864
compiler tests: fix using, add tests to make sure instance? inlines
2011-11-23 01:01:11 -08:00
Doug Coleman
388e80f770
compiler.tree.propagation.transforms: fix infinite recursion that was breaking prettyprint
2011-11-23 00:48:05 -08:00
Doug Coleman
3e2fc2f0cb
classes: optimize instance? for classoids
2011-11-22 20:38:07 -08:00
Doug Coleman
30ade9023c
classes: add syntax for intersection{ and union{ anonymous classes. make classoid a mixin.
2011-11-22 18:49:42 -08:00
Doug Coleman
627bce6615
classes: Make methods dispatch on maybes. Fix a couple bugs in the implementation of maybe. classoid? is now a dumb test if an object could be a well-formed classoid; valid-classoid? tests for well-formedness. Move maybe tests. Make pprint* work better on methods.
2011-11-22 15:12:20 -08:00
Doug Coleman
d3a4e72f95
classes.maybe: move maybe definition from classes.union to classes.maybe
2011-11-22 02:46:36 -08:00
Doug Coleman
14dbf929ee
classes.union: Define a maybe: word that makes a tuple that acts as an anonymous union for a type and f. Updated all the places we define UNION: ?foo foo POSTPONE: f ;. Fixes #416 and lots of headaches.
2011-11-22 01:56:13 -08:00
Joe Groff
ce205e1e3a
code beautification
2011-11-13 16:10:26 -08:00
Joe Groff
e66fdcaa83
compiler.tree.propagation: missed using
2011-11-13 16:10:25 -08:00
Joe Groff
f05bc12553
compiler: more peephole tests for shl/sar
2011-11-13 16:10:24 -08:00
Joe Groff
5c0e3946c5
compiler: tighten (simd-select) output class
...
Ints and smaller (or shorts and smaller on 32-bit) can be assumed to be fixnums. Fixes #393
2011-11-13 16:10:23 -08:00
Joe Groff
2c4c04f973
compiler: add intrinsic for PMOVMSKB/MOVMSKP[SD]
...
Combined with a fast bit-count this will let us rice byte-counting.
2011-11-13 16:10:20 -08:00