9.42.2.2 Register Names

You can use the predefined symbols ‘ r0 ’ through ‘ r63 ’ to refer to the SH64 general registers, ‘ cr0 ’ through cr63 for control registers, ‘ tr0 ’ through ‘ tr7 ’ for target address registers, ‘ fr0 ’ through ‘ fr63 ’ for single-precision floating point registers, ‘ dr0 ’ through ‘ dr62 ’ (even numbered registers only) for double-precision floating point registers, ‘ fv0 ’ through ‘ fv60 ’ (multiples of four only) for single-precision floating point vectors, ‘ fp0 ’ through ‘ fp62 ’ (even numbered registers only) for single-precision floating point pairs, ‘ mtrx0 ’ through ‘ mtrx48 ’ (multiples of 16 only) for 4x4 matrices of single-precision floating point registers, ‘ pc ’ for the program counter, and ‘ fpscr ’ for the floating point status and control register.

You can also refer to the control registers by the mnemonics ‘ sr ’, ‘ ssr ’, ‘ pssr ’, ‘ intevt ’, ‘ expevt ’, ‘ pexpevt ’, ‘ tra ’, ‘ spc ’, ‘ pspc ’, ‘ resvec ’, ‘ vbr ’, ‘ tea ’, ‘ dcr ’, ‘ kcr0 ’, ‘ kcr1 ’, ‘ ctc ’, and ‘ usr ’.