1.1 --- a/docs/concepts.txt Sat May 23 02:46:04 2009 +0200
1.2 +++ b/docs/concepts.txt Sun May 24 00:21:41 2009 +0200
1.3 @@ -9,6 +9,7 @@
1.4 * Objects and structures
1.5 * Parameters and lookups
1.6 * Instantiation
1.7 + * Register usage
1.8
1.9 Namespaces and Attribute Definition
1.10 ===================================
1.11 @@ -419,3 +420,17 @@
1.12 resulting instance, along with locations for the attributes of the instance.
1.13 Since the instance header contains data common to all instances of a class, a
1.14 template header is copied to the start of the newly reserved memory region.
1.15 +
1.16 +Register Usage
1.17 +==============
1.18 +
1.19 +During code generation, much of the evaluation produces results which are
1.20 +implicitly recorded in the "active value" register, and various instructions
1.21 +will consume the active value. In addition, some instructions will consume a
1.22 +separate "active source value" from a register, typically those which are
1.23 +assigning the result of an expression to an assignment target.
1.24 +
1.25 +Since values often need to be retained for later use, a set of temporary
1.26 +storage locations are typically employed. However, optimisations may reduce
1.27 +the need to use such temporary storage where instructions which provide the
1.28 +"active value" can be re-executed and will produce the same result.