Registers

Register values can be referenced by the KDB kernel debugger and the kdb command.

Register values can be used in subcommands by preceding the register name with an at sign (@). This character is also used to dereference addresses as described in Expressions. Registers that can be referenced include the following:

Register Description
asr Address space register
cr Condition register
ctr Count register
dar Data address register
dec Decrementer
dsisr Data storage interrupt status register
fp0-fp31 Floating point registers 0 through 31
fpscr Floating point status and control register
iar Instruction address register
lr Link register
mq Multiply quotient
msr Machine State register
r0-r31 General Purpose Registers 0 through 31
rtcl Real Time clock (nanoseconds)
rtcu Real Time clock (seconds)
s0-s15 Segment registers
sdr0 Storage description register 0
sdr1 Storage description register 1
srr0 Machine status save/restore 0
srr1 Machine status save/restore 1
tbl Time base register, lower
tbu Time base register, upper
tid Transaction register (fixed point)
xer Exception register (fixed point)

Other special purpose registers that can be referenced, if they are supported on the hardware, include the following:

  • sprg0
  • sprg1
  • sprg2
  • sprg3
  • pir
  • fpecr
  • ear
  • pvr
  • hid0
  • hid1
  • iabr
  • dmiss
  • imiss
  • dcmp
  • icmp
  • hash1
  • hash2
  • rpa
  • buscsr
  • l2cr
  • l2sr
  • mmcr0
  • mmcr1
  • pmc1
  • pmc2
  • pmc3
  • pmc4
  • pmc5
  • pmc6
  • pmc7
  • pmc8
  • sia
  • sda