compiler.cfg.*: more stub docs for cfg construction words
							parent
							
								
									81a84266d3
								
							
						
					
					
						commit
						164af978ba
					
				| 
						 | 
				
			
			@ -137,5 +137,28 @@ HELP: ##copy
 | 
			
		|||
HELP: ##compare-integer
 | 
			
		||||
{ $class-description "This instruction is emitted for integer comparisons." } ;
 | 
			
		||||
 | 
			
		||||
HELP: ##spill
 | 
			
		||||
{ $class-description "Instruction that copies a value from a register to a " { $link spill-slot } "." } ;
 | 
			
		||||
 | 
			
		||||
HELP: gc-map-insn
 | 
			
		||||
{ $class-description "Union class of all instructions that contain subroutine calls to functions which allocate memory." } ;
 | 
			
		||||
 | 
			
		||||
ARTICLE: "compiler.cfg.instructions" "Basic block instructions"
 | 
			
		||||
"The " { $vocab-link "compiler.cfg.instructions" } " vocab contains all instruction classes used for generating CFG:s (Call Flow Graphs)."
 | 
			
		||||
$nl
 | 
			
		||||
"Instruction classes for moving values around:"
 | 
			
		||||
{ $subsections
 | 
			
		||||
  ##copy
 | 
			
		||||
  ##reload
 | 
			
		||||
  ##replace
 | 
			
		||||
  ##spill
 | 
			
		||||
}
 | 
			
		||||
"Garbage collection words and instruction classes:"
 | 
			
		||||
{ $subsections
 | 
			
		||||
  gc-map-insn
 | 
			
		||||
}
 | 
			
		||||
"Alien calls:"
 | 
			
		||||
{ $subsections
 | 
			
		||||
  ##alien-invoke
 | 
			
		||||
  alien-call-insn
 | 
			
		||||
} ;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
USING: help.markup help.syntax ;
 | 
			
		||||
IN: compiler.cfg.linear-scan.live-intervals
 | 
			
		||||
 | 
			
		||||
HELP: <live-interval>
 | 
			
		||||
{ $description "Creates a new live interval for a virtual register. Initially the range is empty." } ;
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
USING: help.markup help.syntax ;
 | 
			
		||||
IN: compiler.cfg.linear-scan.resolve
 | 
			
		||||
 | 
			
		||||
HELP: location
 | 
			
		||||
{ $class-description "Represents an abstract location such as a cpu register or a spill slot." } ;
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,10 @@
 | 
			
		|||
USING: help.markup help.syntax ;
 | 
			
		||||
IN: compiler.cfg.stack-frame
 | 
			
		||||
 | 
			
		||||
HELP: stack-frame
 | 
			
		||||
{ $class-description "Counts of, among other things, how much stack a compiled word needs. It has the following slots:"
 | 
			
		||||
  { $table
 | 
			
		||||
    { { $slot "total-size" } { "Total size of the stack frame." } }
 | 
			
		||||
    { { $slot "spill-area-size" } { "Number of bytes requires for all spill slots." } }
 | 
			
		||||
  }
 | 
			
		||||
} ;
 | 
			
		||||
		Loading…
	
		Reference in New Issue