Sun Studio 12 Update 1:使用 dbx 调试程序

平台特定寄存器

以下各表列出了可在表达式中使用的 SPARC、x86 和 AMD64 体系结构的平台特定寄存器名称。

SPARC 寄存器信息

下面的寄存器信息适用于 [Please define the SPARCsans text entity] 体系结构。

寄存器  

说明  

$g0 到 $g7

全局寄存器 

$o0 到 $o7

“外部”寄存器 

$l0 到 $l7

“本地”寄存器 

$i0 到 $i7

“内部”寄存器 

$fp

帧指针,等同于寄存器 $i6 

$sp

栈指针,等同于寄存器 $o6 

$y

Y 寄存器 

$psr

处理器状态寄存器 

$wim

窗口无效屏蔽寄存器 

$tbr

捕获基址寄存器 

$pc

程序计数器 

$npc

下一程序计数器 

$f0 到 $f31

FPU "f" 寄存器 

$fsr

FPU 状态寄存器 

$fq

FPU 队列 

$f0f1 $f2f3 ... $f30f31 对浮点型寄存器视为 C 的“双精度”类型(通常 $fN 寄存器视为 C 的“浮点”类型)。这些对也可称为 $d0 ... $d30

SPARC V9 和 V8+ 硬件上另外还提供了以下这些寄存器:


$g0g1 through $g6g7
$o0o1 through $o6o7
$xfsr $tstate $gsr
$f32f33 $f34f35 through $f62f63 ($d32 ... $$d62)

有关 SPARC 寄存器和寻址的更多信息,请参见《SPARC Architecture Reference Manual》(《SPARC 体系结构参考手册》)和《SPARC Assembly Language Reference Manual》(《SPARC 汇编语言参考手册》)。

x86 寄存器信息

下面的寄存器信息适用于 x86 体系结构。

寄存器  

说明  

$gs

交替数据段寄存器 

$fs

交替数据段寄存器 

$es

交替数据段寄存器 

$ds

数据段寄存器 

$edi

目标索引寄存器 

$esi

源索引寄存器 

$ebp

帧指针 

$esp

栈指针 

$ebx

通用寄存器 

$edx

通用寄存器 

$ecx

通用寄存器 

$eax

通用寄存器 

$trapno

异常向量数 

$err

异常错误代码 

$eip

指令指针 

$cs

代码段寄存器 

$eflags

标志 

$uesp

用户栈指针 

$ss

堆栈段寄存器 

常用寄存器也使用其机器无关名称作为别名。

寄存器  

说明  

$sp

栈指针,等同于 $uesp

$pc

程序计数器,等同于 $eip

$fp

帧指针,等同于 $ebp

80386 下半部(16 位)寄存器为:

寄存器  

说明  

$ax

通用寄存器 

$cx

通用寄存器 

$dx

通用寄存器 

$bx

通用寄存器 

$si

源索引寄存器 

$di

目标索引寄存器 

$ip

指令指针,下 16 位 

$flags

标志,下 16 位 

80386 的前四个 16 位寄存器可分为多个 8 位部分:

寄存器  

说明  

$al

寄存器 $ax 的(右)下半部分

$ah

寄存器 $ax 的(左)上半部分

$cl

寄存器 $cx 的(右)下半部分

$ch

寄存器 $cx 的(左)上半部分

$dl

寄存器 $dx 的(右)下半部分

$dh

寄存器 $dx 的(左)上半部分

$bl

寄存器 $bx 的(右)下半部分

$bh

寄存器 $bx 的(左)上半部分

80387 的寄存器为:

寄存器  

说明  

$fctrl

控制寄存器 

$fstat

状态寄存器 

$ftag

标记寄存器 

$fip

指令指针偏移 

$fcs

代码段选择符 

$fopoff

操作数指针偏移 

$fopsel

操作数指针选择符 

$st0 到 $st7

数据寄存器 

AMD64 寄存器信息

下面的寄存器信息适用于 AMD64 体系结构:

寄存器  

说明  

rax

通用寄存器-为函数调用传递参数 

rbx

通用寄存器-被调用方保存 

rcx

通用寄存器-为函数调用传递参数 

rdx

通用寄存器-为函数调用传递参数 

rbp

通用寄存器-栈管理/帧指针 

rsi

通用寄存器-为函数调用传递参数 

rdi

通用寄存器-为函数调用传递参数 

rsp

通用寄存器-栈管理/栈指针 

r8

通用寄存器-为函数调用传递参数 

r9

通用寄存器-为函数调用传递参数 

r10

通用寄存器-临时 

r11

通用寄存器-临时 

r12

通用寄存器-被调用方保存 

r13

通用寄存器-被调用方保存 

r14

通用寄存器-被调用方保存 

r15

通用寄存器-被调用方保存 

rflags

标志寄存器 

rip

指令指针 

mmx0/st0

64 位媒体和浮点寄存器 

mmx1/st1

64 位媒体和浮点寄存器 

mmx2/st2

64 位媒体和浮点寄存器 

mmx3/st3

64 位媒体和浮点寄存器 

mmx4/st4

64 位媒体和浮点寄存器 

mmx5/st5

64 位媒体和浮点寄存器 

mmx6/st6

64 位媒体和浮点寄存器 

mmx7/st7

64 位媒体和浮点寄存器 

xmm0

128 位媒体寄存器 

xmm1

128 位媒体寄存器 

xmm2

128 位媒体寄存器 

xmm3

128 位媒体寄存器 

xmm4

128 位媒体寄存器 

xmm5

128 位媒体寄存器 

xmm6

128 位媒体寄存器 

xmm7

128 位媒体寄存器 

xmm8

128 位媒体寄存器 

xmm9

128 位媒体寄存器 

xmm10

128 位媒体寄存器 

xmm11

128 位媒体寄存器 

xmm12

128 位媒体寄存器 

xmm13

128 位媒体寄存器 

xmm14

128 位媒体寄存器 

xmm15

128 位媒体寄存器 

cs

段寄存器 

os

段寄存器 

es

段寄存器 

fs

段寄存器 

gs

段寄存器 

ss

段寄存器 

fcw

fxsavefxstor 内存映像控制字

fsw

fxsavefxstor 内存映像状态字

ftw

fxsavefxstor 内存映像标记字

fop

fxsavefxstor 内存映像最后一个 x87 op 代码

frip

fxsavefxstor 内存映像 64 位代码段偏移

frdp

fxsavefxstor 内存映像 64 位日期段偏移

mxcsr

fxsavefxstor 内存映像 128 位媒体指令控制和状态寄存器

mxcsr_mask

mxcsr_mask 中的设置位指示 mxcsr 中支持的特征位