The regs command lets you print the value of all the registers.
Here is the syntax for the regs command:
regs [-f][-F]
--f includes floating point registers (single precision). --F includes floating point registers (double precision); this is a SPARC only option.
dbx[13] regs -F current thread: t@1 current frame: [1] g0-g3 0x00000000 0x0011d000 0x00000000 0x00000000 g4-g7 0x00000000 0x00000000 0x00000000 0x00020c38 o0-o3 0x00000003 0x00000014 0xef7562b4 0xeffff420 o4-o7 0xef752f80 0x00000003 0xeffff3d8 0x000109b8 l0-l3 0x00000014 0x0000000a 0x0000000a 0x00010a88 l4-l7 0xeffff438 0x00000001 0x00000007 0xef74df54 i0-i3 0x00000001 0xeffff4a4 0xeffff4ac 0x00020c00 i4-i7 0x00000001 0x00000000 0xeffff440 0x000108c4 y 0x00000000 psr 0x40400086 pc 0x000109c0:main+0x4 mov 0x5, %l0 npc 0x000109c4:main+0x8 st %l0, [%fp - 0x8] f0f1 +0.00000000000000e+00 f2f3 +0.00000000000000e+00 f4f5 +0.00000000000000e+00 f6f7 +0.00000000000000e+00 ...
The following tables list platform-specific register names for SPARC and Intel that can be used in expressions.
The following register information is for SPARC systems.
|
Register |
Description |
|---|---|
|
$g0 through $g7 |
Global registers |
|
$o0 through $o7 |
"out" registers |
|
$l0 through $l7 |
"local" registers |
|
$i0 through $i7 |
"in" registers |
|
$fp |
Frame pointer, equivalent to register $i6 |
|
$sp |
Stack pointer, equivalent to register $o6 |
|
$y |
Y register |
|
$psr |
Processor state register |
|
$wim |
Window invalid mask register |
|
$tbr |
Trap base register |
|
$pc |
Program counter |
|
$npc |
Next program counter |
|
$f0 through $f31 |
FPU "f" registers |
|
$fsr |
FPU status register |
|
$fq |
FPU queue |
The $f0f1 $f2f3 ... $f30f31 pairs of floating point registers are treated as having C "double" type (normally $fN registers are treated as C "float" type). These pairs can also be referred to as $d0 ... $d30.
The following additional registers are available on SPARC V9 and V8+ hardware:
$g0g1 through $g6g7 $o0o1 through $o6o7 $xfsr $tstate $gsr $f32f33 $f34f35 through $f62f63 ($d32 ... $$d62)
See the SPARC Architecture Reference Manual and the Sun-4 Assembly Language Reference Manual for more information on SPARC registers and addressing.
The following register information is for Intel systems.
|
Register |
Description |
|---|---|
|
$gs |
Alternate data segment register |
|
$fs |
Alternate data segment register |
|
$es |
Alternate data segment register |
|
$ds |
Data segment register |
|
$edi |
Destination index register |
|
$esi |
Source index register |
|
$ebp |
Frame pointer |
|
$esp |
Stack pointer |
|
$ebx |
General register |
|
$edx |
General register |
|
$ecx |
General register |
|
$eax |
General register |
|
$trapno |
Exception vector number |
|
$err |
Error code for exception |
|
$eip |
Instruction pointer |
|
$cs |
Code segment register |
|
$eflags |
Flags |
|
$es |
Alternate data segment register |
|
$uesp |
User stack pointer |
|
$ss |
Stack segment register |
Commonly used registers are also aliased to their machine independent names:
|
$sp |
Stack pointer; equivalent of $uesp |
|
$pc |
Program counter; equivalent of $eip |
|
$fp |
Frame pointer; equivalent of $ebp |
Registers for the 80386 lower halves (16 bits) are:
|
$ax |
General register |
|
$cx |
General register |
|
$dx |
General register |
|
$bx |
General register |
|
$si |
Source index register |
|
$di |
Destination index register |
|
$ip |
Instruction pointer, lower 16 bits |
|
$flags |
Flags, lower 16 bits |
The first four 80386 16-bit registers can be split into 8-bit parts:
|
$al |
Lower (right) half of register |
$ax |
|
$ah |
Higher (left) half of register |
$ax |
|
$cl |
Lower (right) half of register |
$cx |
|
$ch |
Higher (left) half of register |
$cx |
|
$dl |
Lower (right) half of register |
$dx |
|
$dh |
Higher (left) half of register |
$dx |
|
$bl |
Lower (right) half of register |
$bx |
|
$bh |
Higher (left) half of register |
$bx |
|
$fctrl |
Control register |
|
$fstat |
Status register |
|
$ftag |
Tag register |
|
$fip |
Instruction pointer offset |
|
$fcs |
Code segment selector |
|
$fopoff |
Operand pointer offset |
|
$fopsel |
Operand pointer selector |
|
$st0 through $st7 |
Data registers |