PS_LGETREGS(3PROC) Process Control Library Functions PS_LGETREGS(3PROC)


NAME


ps_lgetregs, ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs, ps_lgetxregsize,
ps_lgetxregs, ps_lsetxregs - routines that access the target process
register in libthread_db

SYNOPSIS


#include <proc_service.h>

ps_err_e ps_lgetregs(struct ps_prochandle *ph, lwpid_t lid,
prgregset_t gregset);


ps_err_e ps_lsetregs(struct ps_prochandle *ph, lwpid_t lid,
static prgregset_t gregset);


ps_err_e ps_lgetfpregs(struct ps_prochandle *ph, lwpid_t lid,
prfpregset_t *fpregs);


ps_err_e ps_lsetfpregs(struct ps_prochandle *ph, lwpid_t lid,
static prfpregset_t *fpregs);


ps_err_e ps_lgetxregsize(struct ps_prochandle *ph, lwpid_t lid,
int *xregsize);


ps_err_e ps_lgetxregs(struct ps_prochandle *ph, lwpid_t lid,
caddr_t xregset);


ps_err_e ps_lsetxregs(struct ps_prochandle *ph, lwpid_t lid,
caddr_t xregset);


DESCRIPTION


ps_lgetregs(), ps_lsetregs(), ps_lgetfpregs(), ps_lsetfpregs(),
ps_lgetxregsize(), ps_lgetxregs(), ps_lsetxregs() read and write register
sets from lightweight processes (LWPs) within the target process
identified by ph. ps_lgetregs() gets the general registers of the LWP
identified by lid, and ps_lsetregs() sets them. ps_lgetfpregs() gets the
LWP's floating point register set, while ps_lsetfpregs() sets it.

SPARC Only


ps_lgetxregsize(),ps_lgetxregs(), andps_lsetxregs() are SPARC-specific.
They do not need to be defined by a controlling process on non-SPARC
architecture. ps_lgetxregsize() returns in *xregsize the size of the
architecture-dependent extra state registers. ps_lgetxregs() gets the
extra state registers, and ps_lsetxregs() sets them.

RETURN VALUES


PS_OK
The call returned successfully.


PS_NOFPREGS
Floating point registers are neither available for this
architecture nor for this process.


PS_NOXREGS
Extra state registers are not available on this
architecture.


PS_ERR
The function did not return successfully.


ATTRIBUTES


See attributes(5) for description of the following attributes:


+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT Level | Safe |
+---------------+-----------------+

SEE ALSO


libc_db(3LIB), proc_service(3PROC), attributes(5), threads(5)


January 30, 1998 PS_LGETREGS(3PROC)