Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
UNW_SET_FPREG(3libunwind)    Programming Library     UNW_SET_FPREG(3libunwind)

NAME
       unw_set_fpreg --	set contents of	floating-point register

SYNOPSIS
       #include	<libunwind.h>

       int unw_set_fpreg(unw_cursor_t *cp, unw_regnum_t	reg, unw_fpreg_t val);

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

       The  register  numbering	 is target-dependent and described in separate
       manual pages (e.g., libunwind-ia64(3libunwind) 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'')  reg-
       isters  and  frame-related  registers (such as the stack-pointer). How-
       ever, for signal	frames (see  unw_is_signal_frame(3libunwind)),	it  is
       usually possible	to access all registers.

       Note that unw_set_fpreg() can only write	the contents of	floating-point
       registers.  See	unw_set_reg(3libunwind)	 for  a	way to write registers
       which fit in a single word.

RETURN VALUE
       On successful completion, unw_set_fpreg()  returns  0.	Otherwise  the
       negative	value of one of	the error codes	below is returned.

THREAD AND SIGNAL SAFETY
       unw_set_fpreg()	is  thread  safe  as well as safe to use from a	signal
       handler.

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_fpreg() may return any error returned by the ac-
       cess_mem(), access_reg(), and access_fpreg()  callbacks	(see  unw_cre-
       ate_addr_space(3libunwind)).

SEE ALSO
       libunwind(3libunwind),  libunwind-ia64(3libunwind),  unw_get_fpreg(3li-
       bunwind),  unw_is_fpreg(3libunwind),   unw_is_signal_frame(3libunwind),
       unw_set_reg(3libunwind)

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

Programming Library		29 August 2023	     UNW_SET_FPREG(3libunwind)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=unw_set_fpreg&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help