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
Björn Lindqvist
ecf3829843
compiler.cfg.stacks.*: new vocab 'padding' to perform much more accurate
...
live analysis. it will replace the 'map' vocab
2015-05-09 20:04:22 -07:00
Björn Lindqvist
837e098d41
compiler.cfg.*: a little more docs
2015-04-29 09:31:54 -07:00
Björn Lindqvist
acc1bd3221
compiler.*: removing the check-d and check-r slots from gc-map and adjusting code that depended on those
2015-04-29 09:31:53 -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
d2c0ae9fd9
compiler.cfg.stacks.*: more docs
2015-01-22 12:17:21 -08:00
Björn Lindqvist
640759ffed
compiler.cfg.*: new step in finalization: clear-uninitialized
...
this step is supposed to analyze the cfg, find where there are peeks
that can cause stack underflow, and insert replace-imm instructions so
that there are no uninitialized stack locations if they do. could fix #1187
2015-01-22 12:17:20 -08:00
Doug Coleman
4c6435934b
compiler.cfg.stacks.vacant: Fix docs for word rename.
2014-09-08 17:48:22 -07:00
Björn Lindqvist
9836d6a1d0
VM: move the stack scrubbing logic to call_frame_slot_visitor to avoid visiting the callstack twice
...
primitive_minor_gc() iterates the stack twice, first to scrub stack
locations, then to trace overinitialized ones and gc roots. By running
visit_callstack() before visit_stack_elements() you only need to do it
once.
2014-09-08 14:54:18 -07:00
Björn Lindqvist
46082d836a
compiler.cfg.stacks.vacant: invert meaning of 0/1 for overinit:ed locs to make some logic simpler
2014-09-08 14:54:17 -07:00
Björn Lindqvist
70e4f2a8b7
compiler.cfg.instructions: added check-d and check-r slots to gc-map
...
the data is output from compiler.cfg.stacks.vacant in a reasonable
format but not yet used for code generation.
2014-09-08 14:54:17 -07:00
Björn Lindqvist
ecead801c1
compiler.cfg.stacks.vacant: more docs and removed usage of byte-arrays
2014-09-08 14:54:17 -07:00
Björn Lindqvist
ab5e629243
compiler.cfg.stacks.vacant: sub docs seeded with a stolen comment from uninitialized.factor
2014-09-08 14:54:17 -07:00