You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
117 lines
2.2 KiB
117 lines
2.2 KiB
'\" t |
|
.\" Manual page created with latex2man on Thu Aug 16 09:44:45 MDT 2007 |
|
.\" NOTE: This file is generated, DO NOT EDIT. |
|
.de Vb |
|
.ft CW |
|
.nf |
|
.. |
|
.de Ve |
|
.ft R |
|
|
|
.fi |
|
.. |
|
.TH "UNW\\_SET\\_REG" "3" "16 August 2007" "Programming Library " "Programming Library " |
|
.SH NAME |
|
unw_set_reg |
|
\-\- set register contents |
|
.PP |
|
.SH SYNOPSIS |
|
|
|
.PP |
|
#include <libunwind.h> |
|
.br |
|
.PP |
|
int |
|
unw_set_reg(unw_cursor_t *cp, |
|
unw_regnum_t |
|
reg, |
|
unw_word_t |
|
val); |
|
.br |
|
.PP |
|
.SH DESCRIPTION |
|
|
|
.PP |
|
The unw_set_reg() |
|
routine sets the value of register |
|
reg |
|
in the stack frame identified by cursor cp |
|
to the |
|
value passed in val\&. |
|
.PP |
|
The register numbering is target\-dependent and described in separate |
|
manual pages (e.g., libunwind\-ia64(3) for the IA\-64 target). |
|
Furthermore, the exact set of accessible registers may depend on the |
|
type of frame that cp |
|
is referring to. For ordinary stack |
|
frames, it is normally possible to access only the preserved |
|
(``callee\-saved\&'') registers and frame\-related registers (such as the |
|
stack\-pointer). However, for signal frames (see |
|
unw_is_signal_frame(3)), |
|
it is usually possible to access |
|
all registers. |
|
.PP |
|
Note that unw_set_reg() |
|
can only write the contents of |
|
registers whose values fit in a single word. See |
|
unw_set_fpreg(3) |
|
for a way to write registers which do not |
|
fit this constraint. |
|
.PP |
|
.SH RETURN VALUE |
|
|
|
.PP |
|
On successful completion, unw_set_reg() |
|
returns 0. |
|
Otherwise the negative value of one of the error\-codes below is |
|
returned. |
|
.PP |
|
.SH THREAD AND SIGNAL SAFETY |
|
|
|
.PP |
|
unw_set_reg() |
|
is thread\-safe as well as safe to use |
|
from a signal handler. |
|
.PP |
|
.SH ERRORS |
|
|
|
.PP |
|
.TP |
|
UNW_EUNSPEC |
|
An unspecified error occurred. |
|
.TP |
|
UNW_EBADREG |
|
An attempt was made to write a register |
|
that is either invalid or not accessible in the current frame. |
|
.TP |
|
UNW_EREADONLY |
|
An attempt was made to write to a |
|
read\-only register. |
|
.PP |
|
In addition, unw_set_reg() |
|
may return any error returned by |
|
the access_mem(), |
|
access_reg(), |
|
and |
|
access_fpreg() |
|
call\-backs (see |
|
unw_create_addr_space(3)). |
|
.PP |
|
.SH SEE ALSO |
|
|
|
.PP |
|
libunwind(3), |
|
libunwind\-ia64(3), |
|
unw_get_reg(3), |
|
unw_is_signal_frame(3), |
|
unw_set_fpreg(3) |
|
.PP |
|
.SH AUTHOR |
|
|
|
.PP |
|
David Mosberger\-Tang |
|
.br |
|
Email: \fBdmosberger@gmail.com\fP |
|
.br |
|
WWW: \fBhttp://www.nongnu.org/libunwind/\fP\&. |
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
|
|