Register Usage
There are 16, 32-bit general purpose registers which can be used for both integer values and single-precision floating point values. There are also a set of control registers. The registers are shown in the following tables:
Register Name(s)
|
Usage
|
---|
r0
|
Stack pointer
|
r1
|
Scratch register
|
r2-r3
|
Parameter registers, return value
|
r4-r7
|
Parameter registers
|
r8-r13
|
Permanent registers
|
r14
|
Permanent register, frame pointer
|
r15
|
Link pointer
|
Registers r1-r7, r15 are volatile; their contents may be destroyed by a function call. Registers r0, r8-r14 are non-volatile; they will be preserved across function calls.
Name
|
Usage
|
---|
PSR
|
Processor status register
|
VBR
|
Vector base register
|
EPSR, FPSR, EPC, FPC
|
Exception shadow registers
|
SS0-SS4
|
Supervisor storage registers
|
GCR
|
Global control register
|
GSR
|
Global status register
|
PC
|
Program counter
|
Copyright © 1999, Green Hills Software. All rights
reserved.