compiler.cfg.stacks.vacant: sub docs seeded with a stolen comment from uninitialized.factor

db4
Björn Lindqvist 2014-08-14 22:47:06 +02:00 committed by Doug Coleman
parent 40ee3cdcbb
commit ab5e629243
1 changed files with 15 additions and 0 deletions

View File

@ -0,0 +1,15 @@
USING: help.markup help.syntax sequences strings ;
IN: compiler.cfg.stacks.vacant
ARTICLE: "compiler.cfg.stacks.vacant" "Uninitialized/overinitialized stack location analysis"
"Consider the following sequence of instructions:"
{ $code
"##inc-d 2"
"..."
"##allot"
"##replace ... D 0"
"##replace ... D 1"
}
"The GC check runs before stack locations 0 and 1 have been initialized, and so the GC needs to scrub them so that they don't get traced. This is achieved by computing uninitialized locations with a dataflow analysis, and recording the information in GC maps. The scrub_contexts() method on vm/gc.cpp reads this information from GC maps and performs the scrubbing." ;
ABOUT: "compiler.cfg.stacks.vacant"