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.14 on Mon Feb 3 11:35:46 CET 2025.