Oracle® Solaris Studio 12.4: dbx コマンドによるデバッグ

印刷ビューの終了

更新: 2015 年 1 月
 
 

プラットフォーム固有のレジスタ

このセクションの表は、式で使用できる SPARC アーキテクチャー、x86 アーキテクチャー、および AMD64 アーキテクチャーのプラットフォーム固有のレジスタ名を示しています。

SPARC レジスタ情報

次の表は、SPARC アーキテクチャーのレジスタ情報を示しています。

レジスタ
説明
$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 の「double」型とみなされます (通常、$fN レジスタは C の「float」型とみなされます)。これらのペアは、$d0 ... $d30 とも呼ばれます。

次の 4 倍精度浮動小数点レジスタは、C の long double 型を持つと見なされます。これらのレジスタは、SPARC V9 ハードウェア上で使用できます。

$q0 $q4 through $q60

次のレジスタペアは、2 つのレジスタの下位 32 ビットを組み合わせたもので、SPARC V8+ ハードウェアで使用できます。

$g0g1 through $g6g7
$o0o1 through $o6o7

次の追加レジスタは、SPARC V9 および V8+ ハードウェアで使用できます。

$xg0 through $xg7
$xo0 through $xo7
$xfsr $tstate $gsr
$f32f33 $f34f35 through $f62f63 ($d32 ... $$d62)

SPARC のレジスタとアドレッシングの詳細については、『SPARC アーキテクチャーマニュアル バージョン 8』(トッパン刊) および『SPARC Assembly Language Reference Manual』を参照してください。

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 と同じ)。
$ps

次の表は、80386 の下位半分 (16 ビット) のレジスタを示しています。

レジスタ
説明
$ax
汎用レジスタ
$cx
汎用レジスタ
$dx
汎用レジスタ
$bx
汎用レジスタ
$si
ソースインデックスレジスタ
$di
デスティネーションインデックスレジスタ
$ip
命令ポインタ (下位 16 ビット)
$flags
フラグ (下位 16 ビット)

80386 の最初の 4 つの 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
汎用レジスタ - 関数呼び出しの引数の引き渡し
rbp
汎用レジスタ - スタック管理/フレームポインタ
rbx
汎用レジスタ - 呼び出し先保存
rcx
汎用レジスタ - 関数呼び出しの引数の引き渡し
rdx
汎用レジスタ - 関数呼び出しの引数の引き渡し
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
セグメントレジスタ
es
セグメントレジスタ
fs
セグメントレジスタ
gs
セグメントレジスタ
os
セグメントレジスタ
ss
セグメントレジスタ
fcw
fxsave および fxstor メモリーイメージ制御ワード
fsw
fxsave および fxstor メモリーイメージステータスワード
ftw
fxsave および fxstor メモリーイメージタグワード
fop
fxsave および fxstor メモリーイメージ最終 x87 オペコード
frdp
fxsave および fxstor メモリーイメージ 64 ビットオフセットからデータセグメントへ
frip
fxsave および fxstor メモリーイメージ 64 ビットオフセットからコードセグメントへ
mxcsr
fxsave および fxstor メモリーイメージ 128 メディア命令制御およびステータスレジスタ
mxcsr_mask
mxcsr_mask のビットを設定し、mxcsr でサポートされる機能ビットを示す
ymmo
256 ビット Advanced Vector レジスタ
ymm1
256 ビット Advanced Vector レジスタ
ymm2
256 ビット Advanced Vector レジスタ
ymm3
256 ビット Advanced Vector レジスタ
ymm4
256 ビット Advanced Vector レジスタ
ymm5
256 ビット Advanced Vector レジスタ
ymm6
256 ビット Advanced Vector レジスタ
ymm7
256 ビット Advanced Vector レジスタ
ymm8
256 ビット Advanced Vector レジスタ
ymm9
256 ビット Advanced Vector レジスタ
ymm10
256 ビット Advanced Vector レジスタ
ymm11
256 ビット Advanced Vector レジスタ
ymm12
256 ビット Advanced Vector レジスタ
ymm13
256 ビット Advanced Vector レジスタ
ymm14
256 ビット Advanced Vector レジスタ
ymm15
256 ビット Advanced Vector レジスタ

Advanced Vector (AVX) レジスタ (ymm0 - ymm15) の各フィールドは、C intfloat、または double 型を持つと見なすことができます。