Björn Lindqvist
|
3ef33708ae
|
compiler.cfg.linear-scan.assignment: dont think prepare-insn should be called twice here
|
2016-04-02 17:48:23 +02:00 |
Björn Lindqvist
|
76be7b54ed
|
compiler.cfg.linear-scan.*: removed start and end from live-interval-state
They weren't needed because start>> was always equal to ranges min and
end>> ranges max
|
2016-04-01 19:16:35 +02:00 |
John Benediktsson
|
71ef8a22c2
|
disambiguate namespaces:set and sets:set.
|
2016-03-29 17:14:42 -07:00 |
Björn Lindqvist
|
5663d39a76
|
compiler.*: more docs
|
2016-02-28 01:01:38 +01:00 |
Björn Lindqvist
|
4db173cadb
|
compiler.*: random doc and tests updates
|
2015-09-22 08:52:59 +02:00 |
Björn Lindqvist
|
fb45bc278f
|
compiler.cfg.linear-scan.live-intervals: the reg-class slot can be
removed
it's always the same as vreg>> rep-of reg-class-of so no need to store
that data twice
|
2015-09-22 08:51:04 +02:00 |
John Benediktsson
|
ceb75057da
|
change ERROR: words from throw-foo back to foo.
|
2015-08-13 16:13:05 -07:00 |
Doug Coleman
|
ce046b77c8
|
compiler: rename D to D: because it wants a token. Same for R -> R:
|
2015-08-13 15:23:10 -07:00 |
Doug Coleman
|
b6be8685c3
|
basis: ERROR: changes.
|
2015-08-13 03:20:39 -07:00 |
Doug Coleman
|
e0d1b14e5c
|
factor: don't need FROM: namespaces => set or namespaces:set anymore
|
2015-08-12 11:25:57 -05: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
|
2c5f00d865
|
compiler.cfg.*: even more docs
|
2015-07-28 17:58:28 -07:00 |
John Benediktsson
|
b366a06c41
|
use reject instead of [ ... not ] filter.
|
2015-05-12 18:50:34 -07:00 |
Doug Coleman
|
62ea429c2b
|
compiler.cfg.linear-scan.assignment: Trivial docs fix.
|
2015-04-30 18:39:31 -07:00 |
John Benediktsson
|
a7cd03b45d
|
compiler.cfg.linear-scan.assignment: fix help-lint.
|
2015-04-30 17:20:52 -07:00 |
Björn Lindqvist
|
6215561ad4
|
compiler.cfg.*: more docs and removing a test that isn't relevant anymore
|
2015-04-29 09:31:59 -07:00 |
Björn Lindqvist
|
2077ae9180
|
compiler.cfg.linear-scan.assignment: refactoring vreg>reg and
assign-registers-in-block so locals aren't needed
|
2015-04-29 09:31:59 -07:00 |
Björn Lindqvist
|
135d7f5ff3
|
compiler.cfg.*: more unit tests
|
2015-04-29 09:31:59 -07:00 |
Björn Lindqvist
|
c3ca8bd859
|
compiler.cfg.*: even more compiler docs
|
2015-04-29 09:31:58 -07:00 |
Björn Lindqvist
|
997f95196c
|
compiler.cfg.*: lots of new unit tests
|
2015-04-29 09:31:58 -07:00 |
Björn Lindqvist
|
d486de889d
|
compiler.cfg.*: smaller doc improvements
|
2015-04-29 09:31:57 -07:00 |
Björn Lindqvist
|
043b6d5377
|
compiler.cfg.linear-scan.linear-scan: refactoring of word so that locals doesn't need to be used and more docs (by moving comments)
|
2015-04-29 09:31:56 -07:00 |
Björn Lindqvist
|
ded3760d46
|
compiler.*: merge of ##inc-r and ##inc-d into one instruction ##inc with a loc slot
this is nice because it leads to simpler code and matches how ##peek and ##replace instructions work
|
2015-04-29 09:31:53 -07:00 |
Björn Lindqvist
|
aee55f1b83
|
compiler.cfg.linear-scan.assignment: forgot that i removed live-intervals>min-heap
|
2014-12-15 21:04:53 +01:00 |
Björn Lindqvist
|
c810677b47
|
compiler.cfg.linear-scan.*: refactoring to simplify init-allocator and get rid of init-unhandled
|
2014-12-15 20:44:06 +01:00 |
Björn Lindqvist
|
52c6009aeb
|
compiler.cfg.linear-scan.assignment: utility word heap-pop-while which lets you express expire-old-intervals and activate-new-intervals more nicely + tests
|
2014-12-15 20:40:49 +01:00 |
Björn Lindqvist
|
0af46ac4de
|
compiler.cfg.linear-scan.assignment: more docs and refactoring of the init-unhandled and assign-registers-in-block words
|
2014-12-15 20:40:49 +01:00 |
John Benediktsson
|
c65877104e
|
compiler: cleanup usings.
|
2014-12-13 16:10:21 -08:00 |
Björn Lindqvist
|
d3c91bea72
|
compiler.cfg.linear-scan.*: stub docs and tests
|
2014-11-16 06:25:54 -08:00 |
Björn Lindqvist
|
bc5c23b162
|
compiler.cfg.linear-scan.assignment: stub docs
|
2014-11-16 06:25:54 -08:00 |
Alex Vondrak
|
e90ce0865c
|
compiler.cfg.ssa.destruction.leaders: break off leader-map to resolve circular dependencies (oops)
|
2012-12-31 11:20:57 -08:00 |
Doug Coleman
|
6cca0ea468
|
compiler.cfg: Rename <##foo> to ##foo, in the low-level IR
|
2011-11-11 19:48:38 -08:00 |
Doug Coleman
|
eb2a0c611b
|
compiler.cfg: Change low-level IR constructors from ##foo to <##foo>
|
2011-11-06 23:02:46 -08:00 |
Slava Pestov
|
6b5fffc026
|
compiler: preliminary implementation of tracking derived pointers in GC maps
|
2010-09-27 20:12:44 -07:00 |
Slava Pestov
|
ec2f42fd40
|
compiler.cfg.liveness: merge in compiler.cfg.liveness.ssa and simplify the code, since we don't compute live sets before SSA construction anymore
|
2010-09-25 14:36:58 -07:00 |
Slava Pestov
|
94f6ac98de
|
compiler.cfg.linear-scan: fix bad interaction between inactive intervals and sync points
|
2010-07-29 21:06:48 -04:00 |
Slava Pestov
|
355d89e8e8
|
compiler.cfg: now that kill-blocks cannot contain instructions that define vregs we can skip them all
|
2010-07-27 12:40:31 -04:00 |
Slava Pestov
|
e86f434f26
|
Add GC maps to ##box, ##box-long-long, ##alien-invoke, ##alien-indirect and ##call-gc; remove ##gc-map instruction
|
2010-06-14 19:39:46 -04:00 |
Slava Pestov
|
806e54630a
|
GC maps for more compact inline GC checks
|
2010-06-11 20:06:00 -04:00 |
Slava Pestov
|
982e704626
|
compiler.cfg.linear-scan: clean up clobber-insn handling
|
2010-05-07 18:22:35 -04:00 |
Slava Pestov
|
f5c5d8b44c
|
compiler: remove flat machine representation and generate code directly from the CFG
|
2010-05-03 17:34:32 -04:00 |
Slava Pestov
|
38bafd2be8
|
compiler.cfg.linear-scan.assignment: spill slot representation logic was backwards, just like Factor
|
2010-05-03 17:34:29 -04:00 |
Slava Pestov
|
43f269e4eb
|
Register allocation now uses SSA properties to coalesce values with different representations
|
2010-05-03 17:34:20 -04:00 |
Slava Pestov
|
9b34a4a054
|
compiler.cfg: remove unused 'reps' slot from compiler.cfg, and re-organize things in preparation for SSA register allocation
|
2010-05-03 17:34:18 -04:00 |
Slava Pestov
|
43fc230c69
|
compiler.cfg.linear-scan: cleanups
|
2010-05-03 17:34:18 -04:00 |
Slava Pestov
|
95ff5ffe51
|
New GC checks work in progress
|
2010-05-03 17:34:16 -04:00 |
Slava Pestov
|
51b13ce373
|
compiler.cfg.linear-scan: don't insert a _reload if the register is going to be overwritten anyway
|
2010-05-03 17:34:14 -04:00 |
Slava Pestov
|
503c0fcfde
|
compiler: Start using tagged-rep for stuff, and split up compiler.cfg.representations into several sub-vocabularies
|
2010-05-03 17:34:01 -04:00 |
Daniel Ehrenberg
|
7074979745
|
Moving new-sets to sets
|
2010-02-26 16:01:01 -05:00 |
Slava Pestov
|
b4e36608da
|
compiler.cfg: remove _gc instruction, it doesn't need to exist, and change GC checks to ensure that the right amount of space is available instead of blindly checking for 1Kb
|
2009-10-05 05:27:49 -05:00 |