]> gitweb.factorcode.org Git - factor.git/blob - basis/vm/vm-docs.factor
Alternative code is not sufficient to silence compiler
[factor.git] / basis / vm / vm-docs.factor
1 USING: help.markup help.syntax math strings ;
2 IN: vm
3
4 HELP: zone
5 { $class-description "A struct that defines the memory layout for an allocation zone in the virtual machine. Factor code cannot directly access allocation zones, but the struct is used by the compiler to calculate memory addresses. Its slots are:"
6   { $slots
7     { "here" { "Memory address to the last allocated byte in the zone. Initially, this slot is equal to " { $snippet "start" } " but each allocation in the zone will increment this pointer." } }
8     { "start" { "Memory address to the start of the zone." } }
9     { "end" { "Memory address to the end of the zone." } }
10   }
11 } ;
12
13 HELP: vm
14 { $class-description "A struct that defines the memory layout of the running virtual machine. It is used by the optimizing compiler to calculate field offsets. Its slots are:"
15   { $slots
16     { "nursery" { "A " { $link zone } " in which all new objects are allocated." } }
17   }
18 } ;
19
20 HELP: gc-info
21 { $class-description "A struct that defines the sizes of the garbage collection maps for a word. It has the following slots:"
22   { $slots
23     { "gc-root-count" "Number of gc root bits per callsite." }
24     { "derived-root-count" "Number of derived roots per callsite." }
25     { "return-address-count" "Number of gc callsites." }
26   }
27 } ;