Next: machinery scheme stack, Previous: machinery simplifications, Up: machinery [Index]
While running Scheme code Vicare assigns a special role to some CPU registers.
AA-REGISTER
It is used to hold:
it is also used as general purpose register. On a 32-bit i686 CPU it
is the register EAX
.
AP-REGISTER
Holds the address of the first free machine word in the memory segment
of the Scheme heap nursery. On a 32-bit i686 CPU it is the register
EBP
.
CP-REGISTER
Holds the tagged address of a machine word in the Scheme heap,
representing the reference to the closure object being executed; when no
closure is being executed: it is set to zero. It is used to enter the
execution of the closure code and to access the free variables the
closure is closed upon. On a 32-bit i686 CPU it is the register
EDI
.
FP-REGISTER
Holds the address of the machine word in the memory segment of the
Scheme stack holding the return address of the last performed function
call. It is used to access the machine words on the stack containing
function arguments and local variables. On a 32-bit i686 CPU it is
the register ESP
.
PC-REGISTER
Holds the raw address of a machine word in the C language heap; such
address references the first word in the PCB data structure. On a
32-bit i686 CPU it is the register ESI
.
Next: machinery scheme stack, Previous: machinery simplifications, Up: machinery [Index]