Previous: ARC-Chars, Up: ARC Syntax [Contents][Index]
The ARC assembler uses the following register names for its core registers:
r0-r31The core general registers. Registers r26 through r31
have special functions, and are usually referred to by those synonyms.
gpThe global pointer and a synonym for r26.
fpThe frame pointer and a synonym for r27.
spThe stack pointer and a synonym for r28.
ilink1For ARC 600 and ARC 700, the level 1 interrupt link register and a
synonym for r29. Not supported for ARCv2.
ilinkFor ARCv2, the interrupt link register and a synonym for r29.
Not supported for ARC 600 and ARC 700.
ilink2For ARC 600 and ARC 700, the level 2 interrupt link register and a
synonym for r30. Not supported for ARC v2.
blinkThe link register and a synonym for r31.
r32-r59The extension core registers.
lp_countThe loop count register.
pclThe word aligned program counter.
In addition the ARC processor has a large number of auxiliary registers. The precise set depends on the extensions being supported, but the following baseline set are always defined:
identityProcessor Identification register. Auxiliary register address 0x4.
pcProgram Counter. Auxiliary register address 0x6.
status32Status register. Auxiliary register address 0x0a.
btaBranch Target Address. Auxiliary register address 0x412.
ecrException Cause Register. Auxiliary register address 0x403.
int_vector_baseInterrupt Vector Base address. Auxiliary register address 0x25.
status32_p0Stored STATUS32 register on entry to level P0 interrupts. Auxiliary register address 0xb.
aux_user_spSaved User Stack Pointer. Auxiliary register address 0xd.
eretException Return Address. Auxiliary register address 0x400.
erbtaBTA saved on exception entry. Auxiliary register address 0x401.
erstatusSTATUS32 saved on exception. Auxiliary register address 0x402.
bcr_verBuild Configuration Registers Version. Auxiliary register address 0x60.
bta_link_buildBuild configuration for: BTA Registers. Auxiliary register address 0x63.
vecbase_ac_buildBuild configuration for: Interrupts. Auxiliary register address 0x68.
rf_buildBuild configuration for: Core Registers. Auxiliary register address 0x6e.
dccm_buildDCCM RAM Configuration Register. Auxiliary register address 0xc1.
Additional auxiliary register names are defined according to the processor architecture version and extensions selected by the options.
Previous: ARC-Chars, Up: ARC Syntax [Contents][Index]