mirror of
https://github.com/tobast/libunwind-eh_elf.git
synced 2025-02-17 02:31:41 +01:00
(Logical change 1.64)
This commit is contained in:
parent
f86dd46713
commit
2e03d8623b
16 changed files with 1406 additions and 0 deletions
116
doc/unw_get_fpreg.man
Normal file
116
doc/unw_get_fpreg.man
Normal file
|
@ -0,0 +1,116 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 23:33:01 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_GET\\_FPREG" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_get_fpreg \-\- get contents of floating\-point register
|
||||||
|
.PP
|
||||||
|
.SH SYNOPSIS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
#include <libunwind.h>
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
int
|
||||||
|
unw_get_fpreg(unw_cursor_t *cp,
|
||||||
|
unw_regnum_t
|
||||||
|
reg,
|
||||||
|
unw_fpreg_t *valp);
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
.SH DESCRIPTION
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_get_fpreg()
|
||||||
|
routine reads the value of floating\-point
|
||||||
|
register reg
|
||||||
|
in the stack frame identified by cursor cp
|
||||||
|
and stores the value in the variable pointed to by valp\&.
|
||||||
|
.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_get_fpreg()
|
||||||
|
can only read the contents of
|
||||||
|
floating\-point registers. See unw_get_fpreg(3)
|
||||||
|
for a way to
|
||||||
|
read registers which fit in a single word.
|
||||||
|
.PP
|
||||||
|
.SH RETURN VALUE
|
||||||
|
|
||||||
|
.PP
|
||||||
|
On successful completion, unw_get_fpreg()
|
||||||
|
returns 0.
|
||||||
|
Otherwise the negative value of one of the error\-codes below is
|
||||||
|
returned.
|
||||||
|
.PP
|
||||||
|
.SH THREAD AND SIGNAL SAFETY
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_get_fpreg()
|
||||||
|
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 read a register
|
||||||
|
that is either invalid or not accessible in the current frame.
|
||||||
|
.PP
|
||||||
|
In addition, unw_get_fpreg()
|
||||||
|
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_fpreg(3),
|
||||||
|
unw_is_signal_frame(3),
|
||||||
|
unw_set_fpreg(3)
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
|
||||||
|
.PP
|
||||||
|
David Mosberger\-Tang
|
||||||
|
.br
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
81
doc/unw_get_fpreg.tex
Normal file
81
doc/unw_get_fpreg.tex
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_get\_fpreg}{David Mosberger-Tang}{Programming Library}{unw\_get\_fpreg}
|
||||||
|
|
||||||
|
unw\_get\_fpreg -- get contents of floating-point register
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_get\_fpreg}(\Type{unw\_cursor\_t~*}\Var{cp}, \Type{unw\_regnum\_t} \Var{reg}, \Type{unw\_fpreg\_t~*}\Var{valp});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_get\_fpreg}() routine reads the value of floating-point
|
||||||
|
register \Var{reg} in the stack frame identified by cursor \Var{cp}
|
||||||
|
and stores the value in the variable pointed to by \Var{valp}.
|
||||||
|
|
||||||
|
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 \Var{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
|
||||||
|
\Func{unw\_is\_signal\_frame}(3)), it is usually possible to access
|
||||||
|
all registers.
|
||||||
|
|
||||||
|
Note that \Func{unw\_get\_fpreg}() can only read the contents of
|
||||||
|
floating-point registers. See \Func{unw\_get\_fpreg}(3) for a way to
|
||||||
|
read registers which fit in a single word.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
On successful completion, \Func{unw\_get\_fpreg}() returns 0.
|
||||||
|
Otherwise the negative value of one of the error-codes below is
|
||||||
|
returned.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_get\_fpreg}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{Errors}
|
||||||
|
|
||||||
|
\begin{Description}
|
||||||
|
\item[\Const{UNW\_EUNSPEC}] An unspecified error occurred.
|
||||||
|
\item[\Const{UNW\_EBADREG}] An attempt was made to read a register
|
||||||
|
that is either invalid or not accessible in the current frame.
|
||||||
|
\end{Description}
|
||||||
|
In addition, \Func{unw\_get\_fpreg}() may return any error returned by
|
||||||
|
the \Func{access\_mem}(), \Func{access\_reg}(), and
|
||||||
|
\Func{access\_fpreg}() call-backs (see
|
||||||
|
\Func{unw\_create\_addr\_space}(3)).
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{libunwind-ia64(3)},
|
||||||
|
\SeeAlso{unw\_get\_reg(3)},
|
||||||
|
\SeeAlso{unw\_is\_fpreg(3)},
|
||||||
|
\SeeAlso{unw\_is\_signal\_frame(3)},
|
||||||
|
\SeeAlso{unw\_set\_fpreg(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
117
doc/unw_get_reg.man
Normal file
117
doc/unw_get_reg.man
Normal file
|
@ -0,0 +1,117 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 23:19:28 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_GET\\_REG" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_get_reg \-\- get register contents
|
||||||
|
.PP
|
||||||
|
.SH SYNOPSIS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
#include <libunwind.h>
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
int
|
||||||
|
unw_get_reg(unw_cursor_t *cp,
|
||||||
|
unw_regnum_t
|
||||||
|
reg,
|
||||||
|
unw_word_t *valp);
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
.SH DESCRIPTION
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_get_reg()
|
||||||
|
routine reads the value of register
|
||||||
|
reg
|
||||||
|
in the stack frame identified by cursor cp
|
||||||
|
and stores
|
||||||
|
the value in the word pointed to by valp\&.
|
||||||
|
.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_get_reg()
|
||||||
|
can only read the contents of
|
||||||
|
registers whose values fit in a single word. See
|
||||||
|
unw_get_fpreg(3)
|
||||||
|
for a way to read registers which do not fit
|
||||||
|
this constraint.
|
||||||
|
.PP
|
||||||
|
.SH RETURN VALUE
|
||||||
|
|
||||||
|
.PP
|
||||||
|
On successful completion, unw_get_reg()
|
||||||
|
returns 0.
|
||||||
|
Otherwise the negative value of one of the error\-codes below is
|
||||||
|
returned.
|
||||||
|
.PP
|
||||||
|
.SH THREAD AND SIGNAL SAFETY
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_get_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 read a register
|
||||||
|
that is either invalid or not accessible in the current frame.
|
||||||
|
.PP
|
||||||
|
In addition, unw_get_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_fpreg(3),
|
||||||
|
unw_is_signal_frame(3),
|
||||||
|
unw_set_reg(3)
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
|
||||||
|
.PP
|
||||||
|
David Mosberger\-Tang
|
||||||
|
.br
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
81
doc/unw_get_reg.tex
Normal file
81
doc/unw_get_reg.tex
Normal file
|
@ -0,0 +1,81 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_get\_reg}{David Mosberger-Tang}{Programming Library}{unw\_get\_reg}
|
||||||
|
|
||||||
|
unw\_get\_reg -- get register contents
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_get\_reg}(\Type{unw\_cursor\_t~*}\Var{cp}, \Type{unw\_regnum\_t} \Var{reg}, \Type{unw\_word\_t~*}\Var{valp});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_get\_reg}() routine reads the value of register
|
||||||
|
\Var{reg} in the stack frame identified by cursor \Var{cp} and stores
|
||||||
|
the value in the word pointed to by \Var{valp}.
|
||||||
|
|
||||||
|
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 \Var{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
|
||||||
|
\Func{unw\_is\_signal\_frame}(3)), it is usually possible to access
|
||||||
|
all registers.
|
||||||
|
|
||||||
|
Note that \Func{unw\_get\_reg}() can only read the contents of
|
||||||
|
registers whose values fit in a single word. See
|
||||||
|
\Func{unw\_get\_fpreg}(3) for a way to read registers which do not fit
|
||||||
|
this constraint.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
On successful completion, \Func{unw\_get\_reg}() returns 0.
|
||||||
|
Otherwise the negative value of one of the error-codes below is
|
||||||
|
returned.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_get\_reg}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{Errors}
|
||||||
|
|
||||||
|
\begin{Description}
|
||||||
|
\item[\Const{UNW\_EUNSPEC}] An unspecified error occurred.
|
||||||
|
\item[\Const{UNW\_EBADREG}] An attempt was made to read a register
|
||||||
|
that is either invalid or not accessible in the current frame.
|
||||||
|
\end{Description}
|
||||||
|
In addition, \Func{unw\_get\_reg}() may return any error returned by
|
||||||
|
the \Func{access\_mem}(), \Func{access\_reg}(), and
|
||||||
|
\Func{access\_fpreg}() call-backs (see
|
||||||
|
\Func{unw\_create\_addr\_space}(3)).
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{libunwind-ia64(3)},
|
||||||
|
\SeeAlso{unw\_get\_fpreg(3)},
|
||||||
|
\SeeAlso{unw\_is\_signal\_frame(3)},
|
||||||
|
\SeeAlso{unw\_set\_reg(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
74
doc/unw_getcontext.man
Normal file
74
doc/unw_getcontext.man
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 17:20:43 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_GETCONTEXT" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_getcontext \-\- get initial machine\-state
|
||||||
|
.PP
|
||||||
|
.SH SYNOPSIS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
#include <libunwind.h>
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
int
|
||||||
|
unw_getcontext(unw_context_t *ucp);
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
.SH DESCRIPTION
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_getcontext()
|
||||||
|
routine initializes the context structure
|
||||||
|
pointed to by ucp
|
||||||
|
with the machine\-state of the call\-site. The
|
||||||
|
exact set of registers stored by unw_getcontext()
|
||||||
|
is
|
||||||
|
platform\-specific, but, in general, at least all preserved
|
||||||
|
(``callee\-saved\&'') and all frame\-related registers, such as the
|
||||||
|
stack\-pointer, will be stored.
|
||||||
|
.PP
|
||||||
|
.SH RETURN VALUE
|
||||||
|
|
||||||
|
.PP
|
||||||
|
On successful completion, unw_getcontext()
|
||||||
|
returns 0.
|
||||||
|
Otherwise, a value of \-1 is returned.
|
||||||
|
.PP
|
||||||
|
.SH THREAD AND SIGNAL SAFETY
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_getcontext()
|
||||||
|
is thread\-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
.PP
|
||||||
|
.SH SEE ALSO
|
||||||
|
|
||||||
|
.PP
|
||||||
|
libunwind(3),
|
||||||
|
unw_init_local(3)
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
|
||||||
|
.PP
|
||||||
|
David Mosberger\-Tang
|
||||||
|
.br
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
53
doc/unw_getcontext.tex
Normal file
53
doc/unw_getcontext.tex
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_getcontext}{David Mosberger-Tang}{Programming Library}{unw\_getcontext}
|
||||||
|
|
||||||
|
unw\_getcontext -- get initial machine-state
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_getcontext}(\Type{unw\_context\_t~*}\Var{ucp});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_getcontext}() routine initializes the context structure
|
||||||
|
pointed to by \Var{ucp} with the machine-state of the call-site. The
|
||||||
|
exact set of registers stored by \Func{unw\_getcontext}() is
|
||||||
|
platform-specific, but, in general, at least all preserved
|
||||||
|
(``callee-saved'') and all frame-related registers, such as the
|
||||||
|
stack-pointer, will be stored.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
On successful completion, \Func{unw\_getcontext}() returns 0.
|
||||||
|
Otherwise, a value of -1 is returned.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_getcontext}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{unw\_init\_local(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
75
doc/unw_is_fpreg.man
Normal file
75
doc/unw_is_fpreg.man
Normal file
|
@ -0,0 +1,75 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 23:43:08 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_IS\\_FPREG" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_is_fpreg \-\- check if a register is a floating\-point register
|
||||||
|
.PP
|
||||||
|
.SH SYNOPSIS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
#include <libunwind.h>
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
int
|
||||||
|
unw_is_fpreg(unw_regnum_t
|
||||||
|
reg);
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
.SH DESCRIPTION
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_is_fpreg()
|
||||||
|
routine checks whether register number
|
||||||
|
reg
|
||||||
|
is a floating\-point register.
|
||||||
|
.PP
|
||||||
|
.SH RETURN VALUE
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_is_fpreg()
|
||||||
|
routine returns a non\-zero value if
|
||||||
|
reg
|
||||||
|
is a floating\-point register. Otherwise, it returns a value
|
||||||
|
of 0.
|
||||||
|
.PP
|
||||||
|
.SH THREAD AND SIGNAL SAFETY
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_is_fpreg()
|
||||||
|
is thread\-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
.PP
|
||||||
|
.SH SEE ALSO
|
||||||
|
|
||||||
|
.PP
|
||||||
|
libunwind(3),
|
||||||
|
unw_get_reg(3),
|
||||||
|
unw_set_reg(3),
|
||||||
|
unw_get_fpreg(3),
|
||||||
|
unw_set_fpreg(3)
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
|
||||||
|
.PP
|
||||||
|
David Mosberger\-Tang
|
||||||
|
.br
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
53
doc/unw_is_fpreg.tex
Normal file
53
doc/unw_is_fpreg.tex
Normal file
|
@ -0,0 +1,53 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_is\_fpreg}{David Mosberger-Tang}{Programming Library}{unw\_is\_fpreg}
|
||||||
|
|
||||||
|
unw\_is\_fpreg -- check if a register is a floating-point register
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_is\_fpreg}(\Type{unw\_regnum\_t} \Var{reg});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_is\_fpreg}() routine checks whether register number
|
||||||
|
\Var{reg} is a floating-point register.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
The \Func{unw\_is\_fpreg}() routine returns a non-zero value if
|
||||||
|
\Var{reg} is a floating-point register. Otherwise, it returns a value
|
||||||
|
of 0.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_is\_fpreg}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{unw\_get\_reg(3)},
|
||||||
|
\SeeAlso{unw\_set\_reg(3)},
|
||||||
|
\SeeAlso{unw\_get\_fpreg(3)},
|
||||||
|
\SeeAlso{unw\_set\_fpreg(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
93
doc/unw_is_signal_frame.man
Normal file
93
doc/unw_is_signal_frame.man
Normal file
|
@ -0,0 +1,93 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 23:09:48 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_IS\\_SIGNAL\\_FRAME" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_is_signal_frame \-\- check if current frame is a signal frame
|
||||||
|
.PP
|
||||||
|
.SH SYNOPSIS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
#include <libunwind.h>
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
int
|
||||||
|
unw_is_signal_frame(unw_cursor_t *cp);
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
.SH DESCRIPTION
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_is_signal_frame()
|
||||||
|
routine returns a positive value
|
||||||
|
if the current frame identified by cp
|
||||||
|
is a signal frame, and a
|
||||||
|
value of 0 otherwise. For the purpose of this discussion, a signal
|
||||||
|
frame is a frame that was created in response to a potentially
|
||||||
|
asynchronous interruption. For UNIX and UNIX\-like platforms, such
|
||||||
|
frames are normally created by the kernel when delivering a signal.
|
||||||
|
In a kernel\-environment, a signal frame might, for example, correspond
|
||||||
|
to a frame created in response to a device interrupt.
|
||||||
|
.PP
|
||||||
|
Signal frames are somewhat unusual because the asynchronous nature of
|
||||||
|
the events that create them require storing the contents of registers
|
||||||
|
that are normally treated as scratch (``caller\-saved\&'') registers.
|
||||||
|
.PP
|
||||||
|
.SH RETURN VALUE
|
||||||
|
|
||||||
|
.PP
|
||||||
|
On successful completion, unw_is_signal_frame()
|
||||||
|
returns a
|
||||||
|
positive value if the current frame is a signal frame, or 0 if it is
|
||||||
|
not. Otherwise, a negative value of one of the error\-codes below is
|
||||||
|
returned.
|
||||||
|
.PP
|
||||||
|
.SH THREAD AND SIGNAL SAFETY
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_is_signal_frame()
|
||||||
|
is thread\-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
.PP
|
||||||
|
.SH ERRORS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
.TP
|
||||||
|
UNW_ENOINFO
|
||||||
|
Libunwind
|
||||||
|
is unable to determine
|
||||||
|
whether or not the current frame is a signal frame.
|
||||||
|
.PP
|
||||||
|
.SH SEE ALSO
|
||||||
|
|
||||||
|
.PP
|
||||||
|
libunwind(3),
|
||||||
|
unw_get_reg(3),
|
||||||
|
unw_set_reg(3),
|
||||||
|
unw_get_fpreg(3),
|
||||||
|
unw_set_fpreg(3)
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
|
||||||
|
.PP
|
||||||
|
David Mosberger\-Tang
|
||||||
|
.br
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
71
doc/unw_is_signal_frame.tex
Normal file
71
doc/unw_is_signal_frame.tex
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_is\_signal\_frame}{David Mosberger-Tang}{Programming Library}{unw\_is\_signal\_frame}
|
||||||
|
|
||||||
|
unw\_is\_signal\_frame -- check if current frame is a signal frame
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_is\_signal\_frame}(\Type{unw\_cursor\_t~*}\Var{cp});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_is\_signal\_frame}() routine returns a positive value
|
||||||
|
if the current frame identified by \Var{cp} is a signal frame, and a
|
||||||
|
value of 0 otherwise. For the purpose of this discussion, a signal
|
||||||
|
frame is a frame that was created in response to a potentially
|
||||||
|
asynchronous interruption. For UNIX and UNIX-like platforms, such
|
||||||
|
frames are normally created by the kernel when delivering a signal.
|
||||||
|
In a kernel-environment, a signal frame might, for example, correspond
|
||||||
|
to a frame created in response to a device interrupt.
|
||||||
|
|
||||||
|
Signal frames are somewhat unusual because the asynchronous nature of
|
||||||
|
the events that create them require storing the contents of registers
|
||||||
|
that are normally treated as scratch (``caller-saved'') registers.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
On successful completion, \Func{unw\_is\_signal\_frame}() returns a
|
||||||
|
positive value if the current frame is a signal frame, or 0 if it is
|
||||||
|
not. Otherwise, a negative value of one of the error-codes below is
|
||||||
|
returned.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_is\_signal\_frame}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{Errors}
|
||||||
|
|
||||||
|
\begin{Description}
|
||||||
|
\item[\Const{UNW\_ENOINFO}] \Prog{Libunwind} is unable to determine
|
||||||
|
whether or not the current frame is a signal frame.
|
||||||
|
\end{Description}
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{unw\_get\_reg(3)},
|
||||||
|
\SeeAlso{unw\_set\_reg(3)},
|
||||||
|
\SeeAlso{unw\_get\_fpreg(3)},
|
||||||
|
\SeeAlso{unw\_set\_fpreg(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
122
doc/unw_set_fpreg.man
Normal file
122
doc/unw_set_fpreg.man
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 23:35:32 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_SET\\_FPREG" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_set_fpreg \-\- set contents of floating\-point register
|
||||||
|
.PP
|
||||||
|
.SH SYNOPSIS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
#include <libunwind.h>
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
int
|
||||||
|
unw_set_fpreg(unw_cursor_t *cp,
|
||||||
|
unw_regnum_t
|
||||||
|
reg,
|
||||||
|
unw_fpreg_t
|
||||||
|
val);
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
.SH DESCRIPTION
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_set_fpreg()
|
||||||
|
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_fpreg()
|
||||||
|
can only write the contents of
|
||||||
|
floating\-point registers. See unw_set_reg(3)
|
||||||
|
for a way to
|
||||||
|
write registers which fit in a single word.
|
||||||
|
.PP
|
||||||
|
.SH RETURN VALUE
|
||||||
|
|
||||||
|
.PP
|
||||||
|
On successful completion, unw_set_fpreg()
|
||||||
|
returns 0.
|
||||||
|
Otherwise the negative value of one of the error\-codes below is
|
||||||
|
returned.
|
||||||
|
.PP
|
||||||
|
.SH THREAD AND SIGNAL SAFETY
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_set_fpreg()
|
||||||
|
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_fpreg()
|
||||||
|
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_fpreg(3),
|
||||||
|
unw_is_fpreg(3),
|
||||||
|
unw_is_signal_frame(3),
|
||||||
|
unw_set_reg(3)
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
|
||||||
|
.PP
|
||||||
|
David Mosberger\-Tang
|
||||||
|
.br
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
83
doc/unw_set_fpreg.tex
Normal file
83
doc/unw_set_fpreg.tex
Normal file
|
@ -0,0 +1,83 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_set\_fpreg}{David Mosberger-Tang}{Programming Library}{unw\_set\_fpreg}
|
||||||
|
|
||||||
|
unw\_set\_fpreg -- set contents of floating-point register
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_set\_fpreg}(\Type{unw\_cursor\_t~*}\Var{cp}, \Type{unw\_regnum\_t} \Var{reg}, \Type{unw\_fpreg\_t} \Var{val});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_set\_fpreg}() routine sets the value of register
|
||||||
|
\Var{reg} in the stack frame identified by cursor \Var{cp} to the
|
||||||
|
value passed in \Var{val}.
|
||||||
|
|
||||||
|
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 \Var{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
|
||||||
|
\Func{unw\_is\_signal\_frame}(3)), it is usually possible to access
|
||||||
|
all registers.
|
||||||
|
|
||||||
|
Note that \Func{unw\_set\_fpreg}() can only write the contents of
|
||||||
|
floating-point registers. See \Func{unw\_set\_reg}(3) for a way to
|
||||||
|
write registers which fit in a single word.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
On successful completion, \Func{unw\_set\_fpreg}() returns 0.
|
||||||
|
Otherwise the negative value of one of the error-codes below is
|
||||||
|
returned.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_set\_fpreg}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{Errors}
|
||||||
|
|
||||||
|
\begin{Description}
|
||||||
|
\item[\Const{UNW\_EUNSPEC}] An unspecified error occurred.
|
||||||
|
\item[\Const{UNW\_EBADREG}] An attempt was made to write a register
|
||||||
|
that is either invalid or not accessible in the current frame.
|
||||||
|
\item[\Const{UNW\_EREADONLY}] An attempt was made to write to a
|
||||||
|
read-only register.
|
||||||
|
\end{Description}
|
||||||
|
In addition, \Func{unw\_set\_fpreg}() may return any error returned by
|
||||||
|
the \Func{access\_mem}(), \Func{access\_reg}(), and
|
||||||
|
\Func{access\_fpreg}() call-backs (see
|
||||||
|
\Func{unw\_create\_addr\_space}(3)).
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{libunwind-ia64(3)},
|
||||||
|
\SeeAlso{unw\_get\_fpreg(3)},
|
||||||
|
\SeeAlso{unw\_is\_fpreg(3)},
|
||||||
|
\SeeAlso{unw\_is\_signal\_frame(3)},
|
||||||
|
\SeeAlso{unw\_set\_reg(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
122
doc/unw_set_reg.man
Normal file
122
doc/unw_set_reg.man
Normal file
|
@ -0,0 +1,122 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 23:20:56 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_SET\\_REG" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
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
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
83
doc/unw_set_reg.tex
Normal file
83
doc/unw_set_reg.tex
Normal file
|
@ -0,0 +1,83 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_set\_reg}{David Mosberger-Tang}{Programming Library}{unw\_set\_reg}
|
||||||
|
|
||||||
|
unw\_set\_reg -- set register contents
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_set\_reg}(\Type{unw\_cursor\_t~*}\Var{cp}, \Type{unw\_regnum\_t} \Var{reg}, \Type{unw\_word\_t} \Var{val});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_set\_reg}() routine sets the value of register
|
||||||
|
\Var{reg} in the stack frame identified by cursor \Var{cp} to the
|
||||||
|
value passed in \Var{val}.
|
||||||
|
|
||||||
|
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 \Var{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
|
||||||
|
\Func{unw\_is\_signal\_frame}(3)), it is usually possible to access
|
||||||
|
all registers.
|
||||||
|
|
||||||
|
Note that \Func{unw\_set\_reg}() can only write the contents of
|
||||||
|
registers whose values fit in a single word. See
|
||||||
|
\Func{unw\_set\_fpreg}(3) for a way to write registers which do not
|
||||||
|
fit this constraint.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
On successful completion, \Func{unw\_set\_reg}() returns 0.
|
||||||
|
Otherwise the negative value of one of the error-codes below is
|
||||||
|
returned.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_set\_reg}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{Errors}
|
||||||
|
|
||||||
|
\begin{Description}
|
||||||
|
\item[\Const{UNW\_EUNSPEC}] An unspecified error occurred.
|
||||||
|
\item[\Const{UNW\_EBADREG}] An attempt was made to write a register
|
||||||
|
that is either invalid or not accessible in the current frame.
|
||||||
|
\item[\Const{UNW\_EREADONLY}] An attempt was made to write to a
|
||||||
|
read-only register.
|
||||||
|
\end{Description}
|
||||||
|
In addition, \Func{unw\_set\_reg}() may return any error returned by
|
||||||
|
the \Func{access\_mem}(), \Func{access\_reg}(), and
|
||||||
|
\Func{access\_fpreg}() call-backs (see
|
||||||
|
\Func{unw\_create\_addr\_space}(3)).
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{libunwind-ia64(3)},
|
||||||
|
\SeeAlso{unw\_get\_reg(3)},
|
||||||
|
\SeeAlso{unw\_is\_signal\_frame(3)},
|
||||||
|
\SeeAlso{unw\_set\_fpreg(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
110
doc/unw_step.man
Normal file
110
doc/unw_step.man
Normal file
|
@ -0,0 +1,110 @@
|
||||||
|
'\" t
|
||||||
|
.\" Manual page created with latex2man on Wed Mar 19 23:35:32 PST 2003
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
||||||
|
.de Vb
|
||||||
|
.ft CW
|
||||||
|
.nf
|
||||||
|
..
|
||||||
|
.de Ve
|
||||||
|
.ft R
|
||||||
|
|
||||||
|
.fi
|
||||||
|
..
|
||||||
|
.TH "UNW\\_STEP" "3" "19 March 2003" "Programming Library " "Programming Library "
|
||||||
|
.SH NAME
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_step \-\- advance to next stack frame
|
||||||
|
.PP
|
||||||
|
.SH SYNOPSIS
|
||||||
|
|
||||||
|
.PP
|
||||||
|
#include <libunwind.h>
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
int
|
||||||
|
unw_step(unw_cursor_t *cp);
|
||||||
|
.br
|
||||||
|
.PP
|
||||||
|
.SH DESCRIPTION
|
||||||
|
|
||||||
|
.PP
|
||||||
|
The unw_step()
|
||||||
|
routine advances the unwind cursor cp
|
||||||
|
to
|
||||||
|
the next older, less deeply nested stack frame.
|
||||||
|
.PP
|
||||||
|
.SH RETURN VALUE
|
||||||
|
|
||||||
|
.PP
|
||||||
|
On successful completion, unw_step()
|
||||||
|
returns a positive value
|
||||||
|
if there are more stack frames in the call\-chain, or 0 if the returned
|
||||||
|
stack frame is the last frame in the chain. On error, the negative
|
||||||
|
value of one of the error\-codes below is returned.
|
||||||
|
.PP
|
||||||
|
.SH THREAD AND SIGNAL SAFETY
|
||||||
|
|
||||||
|
.PP
|
||||||
|
unw_step()
|
||||||
|
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_ENOINFO
|
||||||
|
Libunwind
|
||||||
|
was unable to locate the
|
||||||
|
unwind\-info needed to complete the operation.
|
||||||
|
.TP
|
||||||
|
UNW_EBADVERSION
|
||||||
|
The unwind\-info needed to complete the
|
||||||
|
operation has a version or a format that is not understood by
|
||||||
|
libunwind\&.
|
||||||
|
.TP
|
||||||
|
UNW_EINVALIDIP
|
||||||
|
The instruction\-pointer
|
||||||
|
(``program\-counter\&'') of the next stack frame is invalid (e.g., not
|
||||||
|
properly aligned).
|
||||||
|
.TP
|
||||||
|
UNW_EBADFRAME
|
||||||
|
The next stack frame is invalid.
|
||||||
|
.TP
|
||||||
|
UNW_ESTOPUNWIND
|
||||||
|
Returned if a call to
|
||||||
|
find_proc_info()
|
||||||
|
returned \-UNW_ESTOPUNWIND\&.
|
||||||
|
.PP
|
||||||
|
In addition, unw_step()
|
||||||
|
may return any error returned by the
|
||||||
|
find_proc_info(),
|
||||||
|
get_dyn_info_list_addr(),
|
||||||
|
access_mem(),
|
||||||
|
access_reg(),
|
||||||
|
or access_fpreg()
|
||||||
|
call\-backs (see unw_create_addr_space(3)).
|
||||||
|
.PP
|
||||||
|
.SH SEE ALSO
|
||||||
|
|
||||||
|
.PP
|
||||||
|
libunwind(3),
|
||||||
|
unw_create_addr_space(3)
|
||||||
|
.PP
|
||||||
|
.SH AUTHOR
|
||||||
|
|
||||||
|
.PP
|
||||||
|
David Mosberger\-Tang
|
||||||
|
.br
|
||||||
|
Hewlett\-Packard Labs
|
||||||
|
.br
|
||||||
|
Palo\-Alto, CA 94304
|
||||||
|
.br
|
||||||
|
Email: \fBdavidm@hpl.hp.com\fP
|
||||||
|
.br
|
||||||
|
WWW: \fBhttp://www.hpl.hp.com/research/linux/libunwind/\fP\&.
|
||||||
|
.\" NOTE: This file is generated, DO NOT EDIT.
|
72
doc/unw_step.tex
Normal file
72
doc/unw_step.tex
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
\documentclass{article}
|
||||||
|
\usepackage[fancyhdr,pdf]{latex2man}
|
||||||
|
|
||||||
|
\input{common.tex}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
|
||||||
|
\begin{Name}{3}{unw\_step}{David Mosberger-Tang}{Programming Library}{unw\_step}
|
||||||
|
|
||||||
|
unw\_step -- advance to next stack frame
|
||||||
|
\end{Name}
|
||||||
|
|
||||||
|
\section{Synopsis}
|
||||||
|
|
||||||
|
\File{\#include $<$libunwind.h$>$}\\
|
||||||
|
|
||||||
|
\Type{int} \Func{unw\_step}(\Type{unw\_cursor\_t~*}\Var{cp});\\
|
||||||
|
|
||||||
|
\section{Description}
|
||||||
|
|
||||||
|
The \Func{unw\_step}() routine advances the unwind cursor \Var{cp} to
|
||||||
|
the next older, less deeply nested stack frame.
|
||||||
|
|
||||||
|
\section{Return Value}
|
||||||
|
|
||||||
|
On successful completion, \Func{unw\_step}() returns a positive value
|
||||||
|
if there are more stack frames in the call-chain, or 0 if the returned
|
||||||
|
stack frame is the last frame in the chain. On error, the negative
|
||||||
|
value of one of the error-codes below is returned.
|
||||||
|
|
||||||
|
\section{Thread and Signal Safety}
|
||||||
|
|
||||||
|
\Func{unw\_step}() is thread-safe as well as safe to use
|
||||||
|
from a signal handler.
|
||||||
|
|
||||||
|
\section{Errors}
|
||||||
|
|
||||||
|
\begin{Description}
|
||||||
|
\item[\Const{UNW\_EUNSPEC}] An unspecified error occurred.
|
||||||
|
\item[\Const{UNW\_ENOINFO}] \Prog{Libunwind} was unable to locate the
|
||||||
|
unwind-info needed to complete the operation.
|
||||||
|
\item[\Const{UNW\_EBADVERSION}] The unwind-info needed to complete the
|
||||||
|
operation has a version or a format that is not understood by
|
||||||
|
\Prog{libunwind}.
|
||||||
|
\item[\Const{UNW\_EINVALIDIP}] The instruction-pointer
|
||||||
|
(``program-counter'') of the next stack frame is invalid (e.g., not
|
||||||
|
properly aligned).
|
||||||
|
\item[\Const{UNW\_EBADFRAME}] The next stack frame is invalid.
|
||||||
|
\item[\Const{UNW\_ESTOPUNWIND}] Returned if a call to
|
||||||
|
\Func{find\_proc\_info}() returned -\Const{UNW\_ESTOPUNWIND}.
|
||||||
|
\end{Description}
|
||||||
|
In addition, \Func{unw\_step}() may return any error returned by the
|
||||||
|
\Func{find\_proc\_info}(), \Func{get\_dyn\_info\_list\_addr}(),
|
||||||
|
\Func{access\_mem}(), \Func{access\_reg}(), or \Func{access\_fpreg}()
|
||||||
|
call-backs (see \Func{unw\_create\_addr\_space}(3)).
|
||||||
|
|
||||||
|
\section{See Also}
|
||||||
|
|
||||||
|
\SeeAlso{libunwind(3)},
|
||||||
|
\SeeAlso{unw\_create\_addr\_space(3)}
|
||||||
|
|
||||||
|
\section{Author}
|
||||||
|
|
||||||
|
\noindent
|
||||||
|
David Mosberger-Tang\\
|
||||||
|
Hewlett-Packard Labs\\
|
||||||
|
Palo-Alto, CA 94304\\
|
||||||
|
Email: \Email{davidm@hpl.hp.com}\\
|
||||||
|
WWW: \URL{http://www.hpl.hp.com/research/linux/libunwind/}.
|
||||||
|
\LatexManEnd
|
||||||
|
|
||||||
|
\end{document}
|
Loading…
Add table
Reference in a new issue