Specyfikacja SPARC-v9 Architektura SPARC-v9 zawiera dwa typy rejestrów: rejestry ogólnego przeznaczenia (nazywane rejestrami roboczymi) oraz rejestry statusowe/kontrolne. Zestaw rejestrów roboczych zawiera: Rejestry całkowitoliczbowe (rejestry r), Rejestry zmiennopozycyjne (rejestry f). Zestaw rejestrów statusu/kontrolne zawiera, m.in.: Rejestr licznika programu (PC), Rejestr stanu procesora (PSTATE), Rejestr adresu bazowego pułapki (TRAP), Rejestr wskaźnika aktualnego okna (CWP), i wiele innych...

Rejestry ogólnego przeznaczenia – r, podzielone są na grupy: 8 rejestrów globalnych (ang. global registers), 8 alternatywnych rejestrów globalnych (ang. alternate global registers) oraz zależną od implementacji liczbę zestawów 24 rejestrów dostępnych jako okno rejestrów (ang. register window) podzielone jako: 8 rejestrów wejściowych (ang. in), 8 rejestrów lokalnych (ang. local) i 8 rejestrów wyjściowych (ang. out). Rejestry r – r stanowią zestaw rejestrów globalnych o nazwach odpowiednio g0 – g7. Rejestr globalny g0 (r) zawiera zawsze wartość zero i zwraca ją podczas odczytu, natomiast podczas zapisu do tego rejestru zapisywana wartość jest ignorowana (tak naprawdę, to odwołanie do tego rejestru za pomocą pewnych instrukcji – LDD, LDA, STD, STA, powoduje zapisanie wyniku w rejestrze r).