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
Slava Pestov
8012fbdf61
Now that #foo and ##foo are symbols we can remove a bunch of \
2011-11-12 22:04:26 -08:00
Joe Groff
4984bde393
cpu.*.bootstrap: clear faulting flag directly
...
No reason to go through a safepoint in unwind-native-frames really.
2011-11-12 13:02:57 -08:00
Doug Coleman
b123bf31b2
compiler.cfg: Rename <##foo> to ##foo, in the low-level IR
2011-11-11 19:48:38 -08:00
Joe Groff
5b43301eb6
vm: strip out call-counting profiler
...
This makes the separate "code" and "entry_point" fields in word and quotation redundant, so also remove them to reclaim an additional cell per word and quotation object, which should help with #318 .
2011-11-10 16:01:07 -08:00
Doug Coleman
cb66728b26
compiler.cfg: Change low-level IR constructors from ##foo to <##foo>
2011-11-06 23:02:46 -08:00
Doug Coleman
1a2be52f25
compiler.tree: Renamed high-level IR node constructors to <#foo> from #foo. Moving towards making classes/word names not conflict.
2011-11-06 23:02:45 -08:00
Doug Coleman
1539682597
compiler.tree.dead-code: Rewrite /mod to /i or mod in the dead-code pass in the high level optimizer. Fixes #279 .
2011-11-06 19:23:26 -08:00
Doug Coleman
be9f8a99f0
Rename lookup to lookup-word.
2011-11-06 16:00:00 -08:00
Joe Groff
75cba3106a
remove BSD,solaris,etc. misc platform support code
2011-11-02 17:13:51 -07:00
Slava Pestov
41c5e41619
compiler.cfg.builder: add test to ensure that fast union predicates do not contain a conditional
2011-10-29 17:11:04 -07:00
Slava Pestov
0f5a65ea51
compiler.tree.propagation: more accurate output type for 'tag' primitive
2011-10-29 17:11:04 -07:00
Slava Pestov
bf533d7d8d
compiler.tree.debugger: disable length limit when printing optimized. quotation
2011-10-29 17:11:03 -07:00
Joe Groff
1eddaf34f1
vm: resumably handle signals from leaf procedures
2011-10-27 21:18:18 -07:00
Joe Groff
5fa890cb20
compiler: no spurious safepoint at start of loops
2011-10-27 21:14:48 -07:00
Joe Groff
f297b39c60
compiler.cfg.tco: clean up commented-out old code
2011-10-27 21:14:47 -07:00
Joe Groff
4a8e1d5f0e
compiler.cfg.tco: teach TCO about safepoints
2011-10-27 21:14:46 -07:00
Joe Groff
b0bccf49d1
compiler.cfg.builder: safepoint loops and epilogs
2011-10-27 21:14:46 -07:00
Joe Groff
cf45e0d581
compiler: add ##safepoint IR insn
2011-10-27 21:14:46 -07:00
Joe Groff
ac3054d1e6
compiler: rt-safepoint and rel-safepoint words
2011-10-27 21:14:45 -07:00
Doug Coleman
f05e33fa37
Fix all failures in the linux64 build email
2011-10-24 19:33:09 -07:00
Doug Coleman
96da8df16e
Rename class to class-of
2011-10-24 06:47:42 -05:00
John Benediktsson
8641187299
More cleanup of unused stuff.
2011-10-19 11:01:16 -07:00
John Benediktsson
f2741b34a4
Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed.
2011-10-18 13:19:39 -07:00
Joe Groff
a3d9990255
compiler.tree.dead-code: fix test
...
It was using "read" in an optimization test, but since "read" is now inline, it wasn't getting the expected optimized quotation back.
2011-10-17 21:23:10 -07:00
John Benediktsson
7494418bf8
More lint cleanups.
2011-10-16 19:33:16 -07:00
John Benediktsson
f419934d6a
Cleanup lint warnings.
2011-10-14 11:47:24 -07:00
John Benediktsson
54b9b3bf14
namespaces: adding a "with-global" word to replace "global [ ] bind".
2011-10-13 17:21:59 -07:00
John Benediktsson
463c7292d1
Fix M: stack effects.
2011-10-13 16:41:17 -07:00
John Benediktsson
b3f5154cc7
sequences: adding ?last for symmetry.
2011-10-13 13:04:24 -07:00
Slava Pestov
6175117b55
callback-error: don't use -e until we fix issue #245
2011-10-10 21:25:50 -07:00
Slava Pestov
1898d0e26e
compiler.tree.identities: the identity on mod was useless too, because we already have a rewrite rule which handles this case in compiler.tree.propagation
2011-10-10 12:34:21 -07:00
Slava Pestov
2e4127cc20
compiler.cfg.representations: fix unit test, it depended on hashing order which changed recently
2011-10-10 12:15:41 -07:00
Slava Pestov
91bfed5d1e
compiler.tree.propagation.transforms: fix rem and mod custom inlining
2011-10-10 12:12:53 -07:00
Slava Pestov
dd0d3d4ef7
compiler.codegen.gc-maps: fix tests
2011-10-10 12:07:09 -07:00