(UNW_REG_EH_ARG1): Ditto.
(UNW_REG_EH_ARG2): Ditto.
(UNW_REG_EH_ARG3): Ditto.
(unw_fpreg_t): Make it a target-dependent type.
(unw_get_proc_name): Also return the offset relative to the function name returned.
(Logical change 1.45)
(unw_dyn_info_format_t): New type.
(unw_dyn_op): Decrease "tag" from 16 to 8 bits, ditto for "qp" member.
(unw_dyn_proc_info): Change "name" pointer to "name_ptr" value (unw_word_t) and
make padding explicit.
(unw_dyn_table_info): Change "name" pointer to "name_ptr" value. Rename
"table_size" to "table_len" and change type of table_data from
void * to "unw_word_t *".
(unw_dyn_info): Switch to doubly-linked list so _U_dyn_cancel() can be O(1).
Change type of "format" member from enum to int32_t. Make padding explicit.
(unw_dyn_info_list): Make "generation" member 32 bits wide. Add "version" member
to enable future extensions to the dynamic info list.
(_U_dyn_register): Don't return anything (it can't fail).
(_U_dyn_cancel): Ditto.
(Logical change 1.30)
The former didn't work because of memory management issues (there was no
reasonable way to allocate/free the memory needed for the string).
Shorten unwind_info_size from size_t to int.
(unw_accessors_t): Add new callbacks put_unwind_info() and get_dyn_info_list_addr().
(unw_create_addr_space): Take byte-order as second argument.
(unw_get_proc_name): New routine.
(unw_find_dynamic_proc_info): Remove (it's brother is in internal.h now).
(unw_flush_cache): Add missing declaration.
(unw_set_caching_policy): Ditto.
(Logical change 1.30)
(UNW_ARCH_OBJ): New macro.
(unw_proc_info_t): New type.
(unw_accessors): Replace acquire_unwind_info and release_unwind_info callbacks
with find_proc_info callback. Change remaining prototypes to take
address-space pointer as the first argument.
(unw_get_accessors): New routine.
(unw_get_proc_info): New routine.
(unw_regname): Make it an UNW_ARCH_OBJ.
(unw_find_dynamic_proc_info): New routine.
(Logical change 1.29)
(unw_addr_space_t): New type.
(unw_accessors_t): Remove "arg" member.
(unw_local_addr_space): New variable.
(unw_create_addr_space): New function.
(unw_destroy_addr_space): Ditto.
(unw_init_remote): Take address-space and accessor-argument pointer instead of
accessor structure as argument.
(unw_set_caching_policy): Take address-space as first argument.
(unw_flush_cache): Take address space and address-range (lo & hi) arguments.
(Logical change 1.27)
various other types and constants based on it.
(unw_error_t): A UNW_EINVAL, UNW_EBADVERSION, and UNW_ENOINFO.
(unw_frame_regnum_t): Instead of hardcoding the numbers for the
well-known frame registers, use the architecture-specific
(target-dependent) values instead.
(Logical change 1.5)
(ia64_regnum_t): Define well-known frame registers here and add
TDEP-aliases for use by libunwind.h.
(unw_ia64_table_t): Use unw_tdep_word_t instead of unw_word_t so this
file can be included by libunwind.h.
Change type of "array" member to void *. On OSes that support
ILP32, it may point to a 32-bit unwind table.
(Logical change 1.5)