Björn Lindqvist
22b871d82e
compiler.cfg.utilities: make it so block>cfg initializes spill-area-align
2015-07-29 13:01:24 +02:00
John Benediktsson
38afea84bf
fix doc using.
2015-07-28 20:20:40 -07:00
John Benediktsson
4ded3c491c
fix some help-lint errors.
2015-07-28 20:06:59 -07:00
Björn Lindqvist
8a731681bf
compiler.cfg.*: tests against #1308
2015-07-28 17:58:29 -07:00
Björn Lindqvist
a8c0a25d87
compiler.cfg.ssa.destruction.coalescing: refactor and maybe a fix for #1308
...
the eliminatable-copy? word is the fix. the previous code only checked
that the registers had the same register class, but you also need to
check that they dont have the same representation size. because a copy
from double-rep -> double-2-rep is not eliminatable
2015-07-28 17:58:29 -07:00
Björn Lindqvist
b544c1b352
compiler.cfg.*: some extra unit tests for the compiler
2015-07-28 17:58:29 -07:00
Björn Lindqvist
820207c5b0
compiler.cfg.ssa.destruction.coalescing: simpler code for setting up the
...
initial leader-map and class-element-map
2015-07-28 17:58:28 -07:00
Björn Lindqvist
5e29aac0a6
Docs: various more compiler-related docs
2015-07-28 17:58:28 -07:00
Björn Lindqvist
aca610813d
compiler.cfg.representations.selection: use a union instead of a generic
...
to see if an insn is peephole-optimizable + test
2015-07-28 17:58:28 -07:00
Björn Lindqvist
44c9b2c8e8
compiler.tree.*: new docs
2015-07-28 17:58:28 -07:00
Björn Lindqvist
2c5f00d865
compiler.cfg.*: even more docs
2015-07-28 17:58:28 -07:00
Björn Lindqvist
e095b54644
compiler.tree.escape-analysis.*: new doc files
2015-07-28 17:58:28 -07:00
Björn Lindqvist
06560b24a6
compiler.tree.escape-analysis.allocations: stub doc file from comments
2015-07-28 17:58:27 -07:00
Björn Lindqvist
b4e4792cb6
compiler.cfg.*: a bunch of docs updates
2015-07-28 17:58:27 -07:00
Björn Lindqvist
cdf9a8535b
compiler.cfg.representations.selection: some initial docs from comments
2015-07-28 17:58:27 -07:00
Björn Lindqvist
31aae02916
compiler.cfg.linear-scan.live-intervals: simpler code for finding the
...
sync points in the cfg
2015-07-28 17:58:27 -07:00
Björn Lindqvist
78d5c0a743
compiler.cfg.instructions: ##read -> read-insn and ##write -> write-insn
2015-07-28 17:58:27 -07:00
Björn Lindqvist
81c7659360
compiler.cfg.instructions: rename ##allocation to allocation-insn,
...
because it's nicer if all instruction unions have the -insn suffix and
the ## prefix is reserved for tuples
2015-07-28 17:58:27 -07:00
Doug Coleman
1fcf96cada
factor: remove """ string syntax for now. there are HEREDOC:, STRING:, escaping \", and something else soon.
2015-07-25 22:59:56 -07:00
John Benediktsson
9ec74563ba
compiler.cfg: use "f [ or ] reduce" instead of "map [ ] any?"
2015-07-21 09:54:44 -07:00
Björn Lindqvist
d24733e703
compiler.cfg.build-stack-frame: refactoring which removes the
...
frame-required? variable
2015-07-21 13:40:50 +02:00
Björn Lindqvist
80ea6b8997
compiler.*: fix the tests that broke because i removed the stack-frame variable
2015-07-21 13:40:49 +02:00
Björn Lindqvist
eba939c0f2
compiler.cfg.stacks.map: this vocab is subsumed by
...
compiler.cfg.stacks.padding which works much better
2015-07-21 13:36:11 +02:00
Björn Lindqvist
bc8525bf5b
compiler.cfg.build-stack-frame: the frame-required? variable needs to be
...
reset so that stack frames aren't included in words that doesn't need them
2015-07-21 13:35:22 +02:00
Björn Lindqvist
b5333ec7aa
compiler.cfg.stack-frame: using cfg get stack-frame>> instead of the
...
stack-frame variable that pointed to the same instance
2015-07-21 13:35:22 +02:00
John Benediktsson
5eec781b40
use ``if*`` instead of ``dup [ ] [ drop ] if``.
2015-07-20 22:24:30 -07:00
Doug Coleman
bcc78ab220
basis: whitespace.
2015-07-20 17:13:52 -07:00
John Benediktsson
3ea9f09f6a
fix some sets:members.
2015-07-20 09:32:31 -07:00
Doug Coleman
2adeed9cb3
factor: rename classes:members to class-members so it doesn't conflict with sets:members. ugh.
2015-07-20 00:32:42 -07:00
Doug Coleman
618330b31e
factor: rename system:vm -> vm-path to differentiate it from vm:vm (which is a STRUCT:)
2015-07-20 00:10:29 -07:00
Doug Coleman
1e22e9b814
factor: all FUNCTION: rename complete
2015-07-19 22:55:24 -07:00
Doug Coleman
b3e8ecf738
factor: more function messups
2015-07-19 20:09:21 -07:00
Doug Coleman
6f6007570a
factor: Fix rename issues.
2015-07-19 19:56:16 -07:00
John Benediktsson
c25fb5f55e
update some more MACRO: effects.
2015-07-19 11:42:46 -07:00
Doug Coleman
2c257f399c
factor: Rename MACRO: and MACRO: to have quot as the output in stack effects.
2015-07-18 22:16:11 -07:00
John Benediktsson
8a3c5c2634
Fix some tests broken by optimized? rename.
2015-07-15 11:47:03 -07:00
John Benediktsson
4c2c8f133f
vm: rename some primitives, and some cleanup.
...
* quot-compiled? => quotation-compiled?
* optimized? => word-optimized?
2015-07-15 11:13:52 -07:00
Doug Coleman
128c262429
compiler.cfg.value-numbering: tests need to have this loaded.
2015-07-06 22:44:36 -07:00
Doug Coleman
892c62e1dc
factor: second stab at [ ] [ ] unit-test -> { } [ ] unit-test
2015-07-03 09:39:59 -07:00
Doug Coleman
40892c0302
tests: prefer ${ } instead of 1array
2015-07-02 14:56:14 -07:00
Doug Coleman
59f3b1ea57
Revert "factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!"
...
Needs a bit more work.
This reverts commit 7e54cc2824
.
2015-07-02 13:47:06 -07:00
Doug Coleman
7e54cc2824
factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!
2015-07-02 11:36:08 -07:00
Doug Coleman
999aa7c897
factor: clean up spaces in -tests files
2015-07-02 10:34:01 -07:00
Doug Coleman
352e5de16a
core, basis, extra: Remove DOS line endings from files.
...
Remove whitespace from end of lines.
Add a newline to the end of each file.
2015-06-29 17:25:40 -07:00
Björn Lindqvist
95fa3eba19
compiler.tree.propagation.known-words: better way to assign the
...
"outputs" to the mod words + some more tests
2015-06-27 16:14:58 +02:00
Björn Lindqvist
0d02ff8e40
compiler.tree.propagation.*: new and fixed tests for the new propagation
...
behaviour for mod
2015-06-27 16:14:58 +02:00
Björn Lindqvist
2f835d3666
compiler.tree.propagation.*: implements downgrading to fixnum for the
...
mod word, maybe a first step in solving #224
factor_vm::primitive_bignum_mod is changed so that it outputs a fixnum
if the value is small enough. Then the compiler can take advantage of
knowing that expressions like [ >bignum 10 mod ] always result in a
fixnum [-9,9] and inline more arithmetic.
2015-06-27 16:14:58 +02:00
Björn Lindqvist
72fe466ac9
compiler.tree.propagation.known-words: more precise output class
...
assignment for all mod words
The compiler can better optimize a quotation like [ 20 fixnum-mod 55 + ]
if it knows fixnum-mod outputs a fixnum.
2015-06-27 16:14:57 +02:00
Doug Coleman
09e4606791
compiler.cfg.debugger: alien-invoke insn nodes were printing double quotes in the dot file output. If you would pprint a string, instead print that string so the double quotes are not present in the output.
2015-06-24 18:46:39 -07:00
John Benediktsson
16abe47b03
compiler.tree.propagation: fix tests for bit? inlining.
2015-06-17 20:52:05 -07:00