Print this page
| Split |
Close |
| Expand all |
| Collapse all |
--- old/usr/src/man/man3proc/ps_lgetregs.3proc.man.txt
+++ new/usr/src/man/man3proc/ps_lgetregs.3proc.man.txt
1 1 PS_LGETREGS(3PROC) Process Control Library Functions PS_LGETREGS(3PROC)
2 2
3 3 NAME
4 4 ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs,
5 5 ps_lgetxregsize, ps_lgetxregs, ps_lsetxregs - routines that access the
6 6 target process register in libthread_db
7 7
8 8 SYNOPSIS
9 9 #include <proc_service.h>
10 10
11 11 ps_err_e ps_lgetregs(struct ps_prochandle *ph, lwpid_t lid,
12 12 prgregset_t gregset);
13 13
14 14
15 15 ps_err_e ps_lsetregs(struct ps_prochandle *ph, lwpid_t lid,
16 16 static prgregset_t gregset);
17 17
18 18
19 19 ps_err_e ps_lgetfpregs(struct ps_prochandle *ph, lwpid_t lid,
20 20 prfpregset_t *fpregs);
21 21
22 22
23 23 ps_err_e ps_lsetfpregs(struct ps_prochandle *ph, lwpid_t lid,
24 24 static prfpregset_t *fpregs);
25 25
26 26
27 27 ps_err_e ps_lgetxregsize(struct ps_prochandle *ph, lwpid_t lid,
28 28 int *xregsize);
29 29
30 30
31 31 ps_err_e ps_lgetxregs(struct ps_prochandle *ph, lwpid_t lid,
32 32 caddr_t xregset);
33 33
34 34
35 35 ps_err_e ps_lsetxregs(struct ps_prochandle *ph, lwpid_t lid,
36 36 caddr_t xregset);
37 37
38 38
39 39 DESCRIPTION
40 40 ps_lgetregs(), ps_lsetregs(), ps_lgetfpregs(), ps_lsetfpregs(),
41 41 ps_lgetxregsize(), ps_lgetxregs(), ps_lsetxregs() read and write
42 42 register sets from lightweight processes (LWPs) within the target
43 43 process identified by ph. ps_lgetregs() gets the general registers of
44 44 the LWP identified by lid, and ps_lsetregs() sets them. ps_lgetfpregs()
45 45 gets the LWP's floating point register set, while ps_lsetfpregs() sets
46 46 it.
47 47
48 48 ps_lgetxregsize(), ps_lgetxregs(), and ps_lsetxregs() are used to get
49 49 and set the extended register set. Support for an extended register set
50 50 depends on the instruction-set archicture. On platforms without support
51 51 for these, controlling processes wlil still need to define them;
52 52 however, they are allowed to simply return errors.
53 53
54 54 ps_lgetxregsize() returns in *xregsize the size of the architecture-
55 55 dependent extra state registers. ps_lgetxregs() gets the extra state
56 56 registers, and ps_lsetxregs() sets them. When getting the registers,
57 57 the size of xregset must be at least the size returned by
58 58 ps_lgetxregsize().
59 59
60 60 RETURN VALUES
61 61 PS_OK
62 62 The call returned successfully.
63 63
64 64
65 65 PS_NOFREGS
66 66 Floating point registers are neither available for this
67 67 architecture nor for this process.
68 68
69 69
70 70 PS_NOXREGS
71 71 Extra state registers are not available on this
72 72 architecture.
73 73
74 74
75 75 PS_ERR
76 76 The function did not return successfully.
77 77
78 78
79 79 ATTRIBUTES
80 80 See attributes(7) for description of the following attributes:
81 81
82 82
83 83
84 84
85 85 +---------------+-----------------+
86 86 |ATTRIBUTE TYPE | ATTRIBUTE VALUE |
87 87 +---------------+-----------------+
88 88 |MT Level | Safe |
89 89 +---------------+-----------------+
90 90
91 91 SEE ALSO
92 92 libc_db(3LIB), proc_service(3PROC), attributes(7), threads(7)
93 93
94 94 January 23, 2023 PS_LGETREGS(3PROC)
|
↓ open down ↓ |
94 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX