Solaris 動的トレースガイド

uregs[] 配列

uregs[] 配列を使用すると、個々のユーザーレジスタにアクセスできます。以下の表に、uregs[] 配列のインデックスを、Solaris でサポートされているシステムアーキテクチャ別に示します。

表 33–1 SPARC uregs[] 定数

定数 

レジスタ 

R_G0..R_G7

%g0..%g7 汎用レジスタ

R_O0..R_O7

%o0..%o7 アウトレジスタ

R_L0..R_L7

%l0..%l7 ローカルレジスタ

R_I0..R_I7

%i0..%i7 インレジスタ

R_CCR

%ccr 条件コードレジスタ

R_PC

%pc プログラムカウンタ

R_NPC

%npc 次のプログラムカウンタ

R_Y

%y 乗算/除算レジスタ

R_ASI

%asi アドレス空間識別レジスタ

R_FPRS

%fprs 浮動小数点レジスタの状態

表 33–2 x86 uregs[] 定数

定数 

レジスタ 

R_CS

%cs

R_GS

%gs

R_ES

%es

R_DS

%ds

R_EDI

%edi

R_ESI

%esi

R_EBP

%ebp

R_EAX

%eax

R_ESP

%esp

R_EAX

%eax

R_EBX

%ebx

R_ECX

%ecx

R_EDX

%edx

R_TRAPNO

%trapno

R_ERR

%err

R_EIP

%eip

R_CS

%cs

R_ERR

%err

R_EFL

%efl

R_UESP

%uesp

R_SS

%ss

AMD64 プラットフォームの uregs 配列には、x86 プラットフォームの内容に加えて、以下の表の要素が含まれます。

表 33–3 amd64 uregs[] 定数

定数 

レジスタ 

R_RSP

%rsp

R_RFL

%rfl

R_RIP

%rip

R_RAX

%rax

R_RCX

%rcx

R_RDX

%rdx

R_RBX

%rbx

R_RBP

%rbp

R_RSI

%rsi

R_RDI

%rdi

R_R8

%r8

R_R9

%r9

R_R10

%r10

R_R11

%r11

R_R12

%r12

R_R13

%r13

R_R14

%r14

R_R15

%r15

すべてのプラットフォームで使用できる別名は、以下の表のとおりです。

表 33–4 共通の uregs[] 定数

定数 

レジスタ 

R_PC

プログラムカウンタレジスタ 

R_SP

スタックポインタレジスタ 

R_R0

最初の復帰コード 

R_R1

2 番目の復帰コード