Björn Lindqvist
|
4390561a6e
|
compiler.cfg.*: new word reset-vreg-counter, useful for making test writing more convenient
|
2015-04-29 09:31:55 -07:00 |
John Benediktsson
|
c65877104e
|
compiler: cleanup usings.
|
2014-12-13 16:10:21 -08:00 |
Björn Lindqvist
|
c85175c10c
|
compiler.cfg.*: new utility word apply-passes to improve the looks of long cleave's where each quotation only contains one word
|
2014-12-11 14:30:47 +01:00 |
Björn Lindqvist
|
e371327ec4
|
compiler.cfg.ssa.construction.tests: fix tc broken by previous commit
|
2014-12-11 14:30:47 +01:00 |
Björn Lindqvist
|
76cb665a8d
|
compiler.cfg.dominance: change needs-dominance effect from ( cfg -- cfg') to ( cfg -- )
|
2014-12-11 14:30:46 +01:00 |
Björn Lindqvist
|
054982f24a
|
compiler.cfg.*: docs for compiler.cfg.dominance and compiler.cfg.ssa.construction
|
2014-12-11 14:30:46 +01:00 |
Björn Lindqvist
|
8744d908b6
|
compiler.cfg.*: fix stack effect of compiler passes in optimize-cfg
since they all modify the cfg in place, it is better if their stack
effect is ( cfg -- ) instead of ( cfg -- cfg' )
|
2014-12-11 14:30:45 +01:00 |
Björn Lindqvist
|
96396cb3ad
|
compiler.*: use block>cfg and insns>block in many tests instead of wordier code
|
2014-11-22 17:31:38 -08:00 |
John Benediktsson
|
d0ad18a64e
|
compiler.cfg.ssa.construction.tdmsc: fix previous broken commits.
|
2013-03-23 18:44:49 -07:00 |
John Benediktsson
|
15f9ba2763
|
Revert "compiler.cfg.ssa.construction.tdmsc: more use of ?adjoin."
This reverts commit 6bf55a6d89 .
|
2013-03-23 18:39:15 -07:00 |
John Benediktsson
|
3f1a426210
|
Revert "compiler.cfg.ssa.construction.tdmsc: pass visited set on stack."
This reverts commit ec2834300b .
|
2013-03-23 18:25:53 -07:00 |
John Benediktsson
|
7744498ad2
|
compiler.cfg.ssa.construction.tdmsc: pass visited set on stack.
|
2013-03-23 18:13:17 -07:00 |
John Benediktsson
|
56a7cf4df2
|
compiler.cfg.ssa.construction.tdmsc: more use of ?adjoin.
|
2013-03-23 17:57:41 -07:00 |
John Benediktsson
|
93fb7805b0
|
compiler: more use of ?adjoin.
|
2013-03-23 17:47:07 -07:00 |
John Benediktsson
|
c7c951f207
|
compiler.cfg.ssa.construction: more use of hash-sets.
|
2013-03-10 10:03:11 -07:00 |
John Benediktsson
|
88626d38ca
|
compiler.cfg.ssa.construction: more use of hash-sets.
|
2013-03-08 12:24:06 -08:00 |
Slava Pestov
|
910748819d
|
Now that #foo and ##foo are symbols we can remove a bunch of \
|
2011-11-12 22:04:26 -08:00 |
John Benediktsson
|
4baf14972f
|
sequences: adding ?last for symmetry.
|
2011-10-13 13:04:24 -07:00 |
Joe Groff
|
2bd6de9a02
|
slots: pre-create the "at", "nth", and "global" slots to make deterministic the currently nondeterministic ambiguity between accessors:change-* and assocs:change-at, sequences:change-nth, and namespaces:change-global
|
2011-09-19 10:03:43 -07:00 |
Slava Pestov
|
6f7e4e32d0
|
compiler.cfg.ssa.construction: update unit tests for nths change
|
2011-02-25 21:05:38 -08:00 |
Slava Pestov
|
8bc2ea7a5c
|
compiler.cfg.ssa.construction: use the baller method for pruned SSA
|
2010-09-20 21:36:22 -07:00 |
Slava Pestov
|
e27adb2830
|
compiler: re-architect low-level optimizer to allow more than one output value per instruction
|
2010-07-13 07:40:14 -04:00 |
Slava Pestov
|
5ecd2b61c7
|
compiler.cfg: more silly optimizations
|
2010-05-14 18:37:09 -04:00 |
Slava Pestov
|
5d3a7a7362
|
Untagged fixnums work in progress
|
2010-05-03 17:34:02 -04:00 |
Daniel Ehrenberg
|
248730d39f
|
Cleaning up compiler.cfg.ssa.construction
|
2010-03-17 20:12:10 -04:00 |
Daniel Ehrenberg
|
512fe14e4e
|
Merge branch 'bags' of git://github.com/littledan/Factor
Conflicts:
basis/compiler/cfg/ssa/construction/tdmsc/tdmsc.factor
basis/furnace/auth/auth.factor
basis/stack-checker/backend/backend.factor
|
2010-03-16 13:28:00 -04:00 |
Joe Groff
|
191ac353fd
|
generalize stack effects so we can bootstrap with the stricter stack effect checking
|
2010-03-08 23:38:10 -08:00 |
Daniel Ehrenberg
|
7cd3360cdd
|
Fixing ambiguity between sets and namespaces in many unit tests and furnace.auth
|
2010-02-26 17:17:40 -05:00 |
Daniel Ehrenberg
|
7074979745
|
Moving new-sets to sets
|
2010-02-26 16:01:01 -05:00 |
Daniel Ehrenberg
|
a72e2cc96c
|
Finishing converting compiler.cfg.ssa.construction.tdmsc to new-sets
|
2010-02-26 13:53:20 -05:00 |
Daniel Ehrenberg
|
30cc248bb3
|
Bit sets use new new set protocol, and compiler.cfg.ssa.construction.tdmsc is updated for it
|
2010-02-16 15:14:32 -06:00 |
Doug Coleman
|
afdb7f6329
|
remove a stray character
|
2010-01-22 15:07:01 -06:00 |
Doug Coleman
|
8c1d202b4c
|
Rename accumulator to collector, pusher to selector
|
2010-01-22 15:00:53 -06:00 |
Slava Pestov
|
d0c393aa60
|
compiler.cfg: new system to track when results of analyses need to be recomputed (reverse post order, linear order, predecessors, dominance, loops). Passes can now call needs-predecessors, needs-dominance, needs-loops at the beginning, and cfg-changed, predecessors-changd at the end. Linearization order now takes loop nesting into account, and linear scan now uses linearization order instead of RPO.
|
2009-08-08 20:02:56 -05:00 |
Slava Pestov
|
4b7ba38aab
|
compiler.cfg: virtual registers are integers now, and representations are stored off to the side. Fix bug in representation selection that would manifest if a value was used as a float and a fixnum in different branches; cannot globally unbox float in this case
|
2009-08-08 04:02:18 -05:00 |
Slava Pestov
|
725280d424
|
Split off the notion of a register representation from a register class
|
2009-08-07 17:44:50 -05:00 |
Slava Pestov
|
e1c7f7394a
|
compiler.cfg: clean up unit tests using some new utilities
|
2009-08-02 03:49:25 -05:00 |
Slava Pestov
|
74766d1ccd
|
compiler.cfg.linear-scan.assignment: modifies instructions in place instead of storing a registers assoc for further compile-time performance improvement
|
2009-07-29 06:36:14 -05:00 |
Slava Pestov
|
d913d7331f
|
compiler.cfg: Minor optimization. Instructions can now only ever produce a single value; this eliminates 1array constructions and some iterations
|
2009-07-28 12:29:07 -05:00 |
Slava Pestov
|
7d3b6892d5
|
compiler.cfg.ssa.construction: use the optimization from the pruned-SSA paper to minimize stack pushing and popping
|
2009-07-28 11:52:42 -05:00 |
Slava Pestov
|
62fe308776
|
compiler.cfg.ssa.construction: Use TDMSC algorithm to compute Phi placement
|
2009-07-28 11:16:10 -05:00 |
Slava Pestov
|
d10993b837
|
compiler.cfg: Rename ssa to ssa.construction, coalescing to ssa.destruction
|
2009-07-28 09:34:08 -05:00 |