dwww Home | Manual pages | Find package

UNW_SET_REG(3)               Programming Library                UNW_SET_REG(3)

NAME
       unw_set_reg -- set register contents

SYNOPSIS
       #include <libunwind.h>

       int unw_set_reg(unw_cursor_t *cp, unw_regnum_t reg, unw_word_t val);

DESCRIPTION
       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.

       The register numbering is target-dependent and  described  in  separate
       manual  pages (e.g., libunwind-ia64(3) for the IA-64 target).  Further-
       more, the exact set of accessible registers may depend on the  type  of
       frame  that  cp  is referring to. For ordinary stack frames, it is nor-
       mally possible to access only the preserved  (``callee-saved'')  regis-
       ters  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.

       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.

RETURN VALUE
       On successful completion, unw_set_reg() returns 0.  Otherwise the nega-
       tive value of one of the error-codes below is returned.

THREAD AND SIGNAL SAFETY
       unw_set_reg() is thread-safe as well as safe to use from a signal  han-
       dler.

ERRORS
       UNW_EUNSPEC
               An unspecified error occurred.

       UNW_EBADREG
               An  attempt was made to write a register that is either invalid
              or not accessible in the current frame.

       UNW_EREADONLY
               An attempt was made to write to a read-only register.

       In addition, unw_set_reg() may return any error  returned  by  the  ac-
       cess_mem(),  access_reg(),  and access_fpreg() call-backs (see unw_cre-
       ate_addr_space(3)).

SEE ALSO
       libunwind(3),    libunwind-ia64(3),     unw_get_reg(3),     unw_is_sig-
       nal_frame(3), unw_set_fpreg(3)

AUTHOR
       David Mosberger-Tang
       Email: dmosberger@gmail.com
       WWW: http://www.nongnu.org/libunwind/.

Programming Library             16 August 2007                  UNW_SET_REG(3)

Generated by dwww version 1.15 on Mon Jul 1 14:43:44 CEST 2024.