JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Oracle Solaris 11.1 Dynamic Tracing Guide     Oracle Solaris 11.1 Information Library
search filter icon
search icon

Document Information

Preface

1.  About DTrace

2.  D Programming Language

3.  Aggregations

4.  Actions and Subroutines

5.  Buffers and Buffering

6.  Output Formatting

7.  Speculative Tracing

8.  dtrace(1M) Utility

9.  Scripting

10.  Options and Tunables

11.  Providers

12.  User Process Tracing

copyin and copyinstr Subroutines

Avoiding Errors

Eliminating dtrace(1M) Interference

syscall Provider

ustack Action

uregs[] Array

pid Provider

User Function Boundary Tracing

Tracing Arbitrary Instructions

13.  Statically Defined Tracing for User Applications

14.  Security

15.  Anonymous Tracing

16.  Postmortem Tracing

17.  Performance Considerations

18.  Stability

19.  Translators

20.  Versioning

Index

uregs[] Array

The uregs[] array enables you to access individual user registers. The following tables list indices into the uregs[] array corresponding to each supported Oracle Solaris system architecture.

Table 12-1 SPARC uregs[] Constants

Constant
Register
R_G0..R_G7
%g0..%g7 global registers
R_O0..R_O7
%o0..%o7 out registers
R_L0..R_L7
%l0..%l7 local registers
R_I0..R_I7
%i0..%i7 in registers
R_CCR
%ccr condition code register
R_PC
%pc program counter
R_NPC
%npc next program counter
R_Y
%y multiply/divide register
R_ASI
%asi address space identifier register
R_FPRS
%fprs floating-point registers state

Table 12-2 x86 uregs[] Constants

Constant
Register
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

On AMD64 platforms, the uregs array has the same content as it does on x86 platforms, plus the additional elements listed in the following table:

Table 12-3 amd64 uregs[] Constants

Constant
Register
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

The aliases listed in the following table can be used on all platforms:

Constant
Register
R_PC
program counter register
R_SP
stack pointer register
R_R0
first return code
R_R1
second return code