1
0
Fork 0
mirror of https://github.com/tobast/libunwind-eh_elf.git synced 2024-07-03 06:01:45 +02:00
Commit graph

308 commits

Author SHA1 Message Date
mostang.com!davidm 7915b799c8 Drop argument names from prototypes to reduce namespace pollution.
Define libunwind routines such that it is possible to take their
addresses.

(Logical change 1.156)
2004-01-21 01:05:07 +00:00
mostang.com!davidm 64854d0d7c Drop argument names from prototypes to reduce namespace pollution.
(Logical change 1.156)
2004-01-21 01:05:07 +00:00
mostang.com!davidm 24ac6e693d (unw_tdep_is_fpreg): Define it as an external function (a macro would
have to evaluate the argument multiple times so it's better
	to implement it out-of-line).

(Logical change 1.156)
2004-01-21 01:05:07 +00:00
mostang.com!davidm 66e78e1ca3 (Logical change 1.156) 2004-01-21 01:05:07 +00:00
mostang.com!davidm cd7dcba0ed Rename AO_TS_T to AO_TS_t (gets syntax coloring right... ;-).
(Logical change 1.155)
2004-01-20 23:50:00 +00:00
mostang.com!davidm 40fcb9b7e5 (unw_addr_space.cache_generation): Declare as AO_t instead of AO_T
(gets syntax-coloring right ;-).

(Logical change 1.155)
2004-01-20 23:50:00 +00:00
mostang.com!davidm 195eb64285 (struct mempool): Move "reserve" and "num_free" next to
each other to minimize padding.

(Logical change 1.155)
2004-01-20 23:50:00 +00:00
mostang.com!davidm 82cfd4862f (cmpxchg_ptr): Use a union to do the pointer-casting so that
GCC knows it can't use ANSI-C aliasing rules.

(Logical change 1.155)
2004-01-20 23:50:00 +00:00
mostang.com!davidm c1bbbb2a3a (unwi_dyn_validate_cache): Declare.
(Logical change 1.154)
2004-01-20 23:32:28 +00:00
mostang.com!davidm 2d4098ac19 (unw): Remove debug_level.
(tdep_debug_level): Declare it as a separate variable.  This
	ensures that only one debug-level variable is in use
	at any given time, no matter what combination of
	local-only vs generic and static vs. dynamic libraries
	are in use.
(unw): Document why it's not an UNW_ARCH_OBJ().

(Logical change 1.154)
2004-01-20 23:32:28 +00:00
mostang.com!davidm 47c32cd07f (_Uia64_search_unwind_table): Make it an UNW_OBJ() instead.
(unw_search_ia64_unwind_table): Declare.

(Logical change 1.154)
2004-01-20 23:32:28 +00:00
hp.com!davidm ea78d27d97 (unwi_dyn_remote_find_proc_info): Drop GENERATION argument.
(Logical change 1.153)
2004-01-20 01:51:17 +00:00
hp.com!davidm a2301f6f57 (struct unw_addr_space.shared_object_removals) [!UNW_REMOTE_ONLY]: New member.
(Logical change 1.153)
2004-01-20 01:51:17 +00:00
hp.com!davidm 23024e28c0 Add includes of <string.h> and <unistd.h>.
(NORETURN): New macro.
(PROTECTED): Likewise.
(print_error): New inline routine.
(fetch8): Provide UNW_LOCAL_ONLY-version.
(fetch16): Likewise.
(fetch32): Likewise.
(fetchw): Likewise.
(_U_dyn_info_list_addr): Declare.

(Logical change 1.151)
2004-01-03 10:50:24 +00:00
hp.com!davidm 9b52d39425 (tdep_find_proc_info): Declare it as a regular object (not arch-obj).
(tdep_uc_addr): Likewise.
(tdep_put_unwind_info): Define only if not UNW_LOCAL_ONLY.
(unw): Declare as regular object.

(Logical change 1.151)
2004-01-03 10:50:24 +00:00
mostang.com!davidm b9d2cc7919 Drop HIDDEN from declarations, only the definitions need it.
(Logical change 1.150)
2003-12-21 07:57:42 +00:00
mostang.com!davidm aa800d423d (unw): Mark it as HIDDEN.
(Logical change 1.148)
2003-12-21 07:21:28 +00:00
mostang.com!davidm e6aedd3089 (dyn_generation): Drop bogus comment.
(Logical change 1.147)
2003-12-21 05:53:57 +00:00
mostang.com!davidm d5db6013ff (UNW_PI_FLAG_FIRST_TDEP_BIT): Fix comment.
(Logical change 1.147)
2003-12-21 05:53:57 +00:00
hp.com!davidm 468aaccf17 Switch over to DWARF-based unwinder.
(Logical change 1.146)
2003-12-20 11:50:00 +00:00
hp.com!davidm 45fccdc2f3 (unw_dyn_dwarf_fde_info_t): New type to handle (pre-parsed) DWARF
unwind-info.
(unw_dyn_info_t): Add member "dfi".

(Logical change 1.145)
2003-12-20 11:43:08 +00:00
hp.com!davidm eb51b4294a (Logical change 1.145) 2003-12-20 11:43:08 +00:00
hp.com!davidm 0bbb2fab68 Initial revision 2003-12-20 11:38:49 +00:00
hp.com!davidm b6adfb75c4 Declare mempool-routines as HIDDEN.
(Logical change 1.143)
2003-12-20 11:35:09 +00:00
hp.com!davidm 7d3de049e6 (Debug): New macro. This one automates some of usual stuff that
gets printed during debugging and is supposed to produce
	a nicer format.  Eventually, we'll switch everything over
	from debug() to Debug().
(extract_dynamic_proc_info): We need both generic and local-only.
(dyn_remote_find_proc_info): Likewise.
(dyn_remote_put_unwind_info): Likewise.

(Logical change 1.142)
2003-12-20 11:32:43 +00:00
hp.com!davidm fbe40e537f (unw_word_t): Let the architecture-specific header take care of
defining this type---it's needed very early on.
(unw_proc_info_t): Add architecture-specific "extra" member.  Empty
	for ia64, so no ABI change.
Don't include libunwind-dynamic.h here.

(Logical change 1.140)
2003-12-20 11:20:42 +00:00
hp.com!davidm 77b06d67aa (unw_word_t): Declare it here.
(unw_tdep_proc_info_t): New type.
Include "libunwind-dynamic.h" here.

(Logical change 1.140)
2003-12-20 11:20:42 +00:00
mostang.com!davidm bcdedf6b28 Switch from __sync_val_compare_and_swap() to
__sync_bool_compare_and_swap() since that's we need nowadays anyhow
and since that's also provided by ecc v7.0.

(Logical change 1.138)
2003-12-05 06:42:28 +00:00
hp.com!davidm ab0fdbbb4c (Logical change 1.135) 2003-12-04 07:44:21 +00:00
hp.com!davidm 1a7d4ee7ed Initial revision 2003-12-04 07:44:21 +00:00
hp.com!davidm 7549674169 (unw_get_proc_info_by_ip): New routine.
(Logical change 1.133)
2003-12-04 07:34:21 +00:00
hp.com!davidm 1334cae324 (HAVE___THREAD): Force it off for now---the per-thread cache uses
about 128KB of thread-local storage for each and every
	thread, even if a thread never ever needs to unwind its
	stack.  Seems a bit much.
(ALWAYS_INLINE): New macro which can be used to force inlining
	on compilers that support it.

(Logical change 1.132)
2003-12-04 07:30:39 +00:00
hp.com!davidm 497018e941 Include "elf32.h".
(Logical change 1.130)
2003-11-27 06:52:54 +00:00
hp.com!davidm 7305d26f26 (struct cursor): Declare pi_valid and pi_is_dynamic as unsigned to
avoid compiler warnings.

(Logical change 1.130)
2003-11-27 06:52:54 +00:00
hp.com!davidm 04dd29b6eb (UNUSED): New macro.
(UNW_DEBUG): If DEBUG is not defined, set it to 0.
(inline): Take advantage of UNUSED macro.
(HAVE_CMPXCHG): Don't define it if we're on HP-UX with GCC v3.2 to
	work around a compiler-bug.

(Logical change 1.130)
2003-11-27 06:52:54 +00:00
hp.com!davidm dd8806c82d (unw_dyn_info_format_t): Add UNW_INFO_FORMAT_REMOTE_TABLE.
(unw_dyn_remote_table_info_t): New type.
(unw_dyn_info): Add "rti" member.

(Logical change 1.126)
2003-11-25 22:33:49 +00:00
hp.com!davidm 48723262f7 (_Uia64_find_dyn_list): Pass unw_dyn_info_t pointer instead of its members.
(Logical change 1.126)
2003-11-25 22:33:49 +00:00
hp.com!davidm e01fb3b27e (cmpxchg_ptr): Correct sense of comparison.
(Logical change 1.125)
2003-11-25 20:13:21 +00:00
hp.com!davidm d61f300b7b (ia64_script_cache): If HAVE_ATOMIC_OPS_H is true, declare "busy" member
in lieu of "lock" member.

(Logical change 1.124)
2003-11-24 23:53:25 +00:00
hp.com!davidm c3fa0b6fa8 Regenerate.
(Logical change 1.123)
2003-11-24 21:37:22 +00:00
hp.com!davidm 8e36032bc5 (unw_addr_space): If HAVE_ATOMIC_OPS_H is defined, declare cache_generation
of type AO_T.  This is a temporary work-around until atomic_ops.h
	supports atomic ops on 32-bit variables.

(Logical change 1.123)
2003-11-24 21:37:22 +00:00
hp.com!davidm 90e8393da3 (inline): Add #undef of "inline" before (re-)defining it.
Add support for atomic_ops.h.
	Add fetch_and_add1() and if it is supported, define
	HAVE_FETCH_AND_ADD1.

(Logical change 1.123)
2003-11-24 21:37:22 +00:00
hp.com!davidm 3f35f343c3 (needs_initialization): Declare it as volatile so we get proper memory
ordering when accessing it.  Also, shrink size to 1 byte and move
	it closer to other frequently-used fields.

(Logical change 1.121)
2003-11-24 18:33:44 +00:00
hp.com!davidm 34085cad7b Fix a typo.
(Logical change 1.116)
2003-11-22 06:11:18 +00:00
hp.com!davidm 2c9be974dc Regenerate.
(Logical change 1.115)
2003-11-22 06:08:20 +00:00
hp.com!davidm 3cc1ec6be9 (struct ia64_global_unwind_state): Add "lock" member.
(Logical change 1.111)
2003-11-19 03:11:25 +00:00
hp.com!davidm 039accfd88 (__BYTE_ORDER): Fix HP-UX byte-order to be __BIG_ENDIAN, as it was meant
to be.

(Logical change 1.106)
2003-10-11 01:05:18 +00:00
hp.com!davidm 18626b8def (UNW_IA64_AR_SSD): New alias for ar26.
(Logical change 1.91)
2003-07-08 22:29:34 +00:00
hp.com!davidm c7db73d180 (ABI_MARKER_OLD_LINUX_SIGTRAMP): Rename from ABI_MARKER_LINUX_SIGTRAMP.
(ABI_MARKER_OLD_LINUX_INTERRUPT): Rename from ABI_MARKER_LINUX_INTERRUPT.
(ABI_MARKER_LINUX_SIGTRAMP): Define with Linux ABI value (3).
(ABI_MARKER_LINUX_INTERRUPT): Ditto.

(Logical change 1.91)
2003-07-08 22:29:34 +00:00
mostang.com!davidm d4f81e2b69 Auto merged
2003/06/03 14:35:33-07:00 mostang.com!davidm
(struct ia64_global_unwind-state): Rename member state_record_pool to
	reg_state_pool.

(Logical change 1.90)
2003-06-03 21:36:03 +00:00
hp.com!davidm e771bcab8f (ABI_MARKER_LINUX_INTERRUPT): New macro.
(struct cursor): Add "last_abi_marker" member.  This is the sticky version of
	"abi_marker".


(Logical change 1.89)
2003-04-25 07:44:23 +00:00
mostang.com!davidm 08230509a3 (ABI_LINUX): New macro.
(ABI_HPUX): Ditto.
(ABI_FREEBSD): Ditto.
(ABI_OPENVMS): Ditto.
(ABI_NSK): Ditto.
(ABI_WINDOWS): Ditto.
(unw_addr_space): Add member "abi".

(Logical change 1.87)
2003-04-24 20:45:07 +00:00
mostang.com!davidm 78a7c5a8c1 (ia64_script_insn_opcode): Rename IA64_INSN_ADD to IA64_INSN_INC_PSP,
and IA64_INSN_LOAD to IA64_INSN_LOAD_PSP.  Add IA64_INSN_SET_REG.
(struct ia64_script_insn): Add "abi_marker" member.

(Logical change 1.84)
2003-04-23 05:56:59 +00:00
mostang.com!davidm ed67c3edb7 (ia64_pregnum): Rename IA64_REG_RP to IA64_REG_IP.
(ia64_loc_t): New type.  For UNW_LOCAL_ONLY, it's a single word, as before.
	For the generic case, it's a 2-word structure.  This provides enough
	space to encode all necessary info both for 32-bit targets (which require
	only 4-byte aligned addresses) and for targets which are limited to
	accessing ucontext_t values via uc_access(3).
(ABI_MARKER_LINUX_SIGTRAMP): New macro.
(ABI_MARKER_HP_UX_SIGTRAMP): New macro.
(struct cursor): Consolidate bsp_loc, bspstore_loc, pfs_loc, rnat_loc, ip_loc,
	pri_unat_loc, unat_loc, pr_loc, lc_loc, fpsr_loc, r4-r7_loc,
	b1-b5_loc, f2-f7_loc, and fr_loc[] into loc[] array.  Note that
	there is now a separate PSP-loc (loc[IA64_REG_PSP]) in addition
	to the cached psp value.
	Rename sigcontext_loc to sigcontext_addr.
	Remove is_signal_frame memeber and add abi_marker member instead.
	Change type of rbs_area[].rnat_loc to ia64_loc_t.
(struct ia64_global_unwind_state): Remove preg_index[] array.

(Logical change 1.84)
2003-04-23 05:56:59 +00:00
hp.com!davidm 79f981aaf7 (_U_TDEP_QP_TRUE): New macro.
(Logical change 1.81)
2003-04-21 23:14:14 +00:00
mostang.com!davidm 6ab15cdec4 Regenerate.
(Logical change 1.75)
2003-04-03 07:59:15 +00:00
mostang.com!davidm 89c081cd84 On HP-UX, unset UNW_LOCAL_ONLY and defined UNW_GENERIC_ONLY, since it makes no
sense to do UNW_LOCAL_ONLY on this platform.

(Logical change 1.75)
2003-04-03 07:59:15 +00:00
mostang.com!davidm d53636d414 Move endian-stuff to internal.h.
(Logical change 1.75)
2003-04-03 07:59:15 +00:00
mostang.com!davidm a04f38ef19 Move endian-related defs from tdep-ia64.h to here.
(Logical change 1.75)
2003-04-03 07:59:15 +00:00
mostang.com!davidm 46149fdccd Regenerate.
(Logical change 1.72)
2003-03-31 18:16:54 +00:00
hp.com!davidm f9cc1e4b74 (tdep_get_elf_image): Declare.
(Logical change 1.71)
2003-03-29 07:32:50 +00:00
hp.com!davidm 1d443a63ad (pthread_mutex_init): Declare as a "weak" symbol.
(Logical change 1.71)
2003-03-29 07:32:50 +00:00
mostang.com!davidm 337c0ad989 Add C++ wrapper.
(Logical change 1.70)
2003-03-28 07:43:22 +00:00
mostang.com!davidm 271d7065c2 (cmpchg_ptr): Cast first argument to "volatile long *", since that is what the
Intel compiler wants.

(Logical change 1.70)
2003-03-28 07:43:22 +00:00
mostang.com!davidm 28fe6a6e8b Work around ECC v7.0 bug by manually definining __sync_val_compare_and_swap()
if it isn't defined yet.

(Logical change 1.68)
2003-03-27 04:29:07 +00:00
mostang.com!davidm c7aaa68495 Regenerate.
(Logical change 1.63)
2003-03-19 19:25:18 +00:00
mostang.com!davidm 15693e234b Include config.h, if we have it (HAVE_CONFIG_H).
Include <sys/types.h>.  HP-UX can't include pthread.h otherwise.
Replace test for UNW_TARGET_IA64 with test for HAVE_IA64INTRIN_H.

(Logical change 1.63)
2003-03-19 19:25:18 +00:00
mostang.com!davidm 47c70d7858 Include <inttypes.h> instead of <stdint.h>. HP-UX doesn't have the latter.
(unw_tdep_save_loc_t): Define a dummy member, so we're ANSI-C compliant (which doesn't
	allow empty structs).

(Logical change 1.63)
2003-03-19 19:25:18 +00:00
mostang.com!davidm 58e0e100d1 Include <inttypes.h> instead of <stdint.h>. HP-UX doesn't have the latter.
(Logical change 1.63)
2003-03-19 19:25:18 +00:00
mostang.com!davidm 53bd7613b7 If we don't have <endian.h>, define __LITTLE_ENDIAN and __BIG_ENDIAN here and
guess the right value for __BYTE_ORDER.

(Logical change 1.63)
2003-03-19 19:25:18 +00:00
mostang.com!davidm d5ad49b013 (unw_regname): Correct type of "regnum" from "int" to "unw_regnum_t".
(Logical change 1.62)
2003-03-13 02:15:01 +00:00
mostang.com!davidm 51095505d9 (struct addr_space): Add "dyn_info_list_addr" member.
(Logical change 1.61)
2003-03-11 01:11:18 +00:00
mostang.com!davidm 9003fd20fe Include <signal.h>. Remove include of <tdep.h>.
(mutex_init): New macro.
(HAVE_CMPXCHG): Ditto.
(cmpxchg_ptr): Ditto.
(unwi_full_sigmask): New variable.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm 5daa8619b7 Include "internal.h".
Define sos_alloc(), mempool_init(), mempool_alloc(), and mempool_free() with
	UNWI_ARCH_OBJ() helper macro.
(sos_free): Delete.
(struct mempool): Declare "lock" member.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm 57bdcfeb0d Delete spurious copyright message.
(struct ia64_script_cache): Declare "lock" member.
(ia64_get_cached_proc_info): Rename from ia64_script_lookup().

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm 45ce48f2e4 (unw_tdep_fpreg_t): Declare as "long double".
(UNW_TDEP_EH): Declare.
(UNW_TDEP_NUM_EH_REGS): New macro.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm a6e367131b (UNW_TDEP_EH): Rename from UNW_TDEP_EH_ARG0.
(UNW_TDEP_EH_ARG1): Delete.
(UNW_TDEP_EH_ARG2): Ditto.
(UNW_TDEP_EH_ARG3): Ditto.
(UNT_TDEP_NUM_EH_REGS): New macro.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm c670abba8f (UNW_REG_EH): Rename from UNW_REG_EH_ARG0.
(UNW_REG_EH_ARG1): Delete.
(UNW_REG_EH_ARG2): Ditto.
(UNW_REG_EH_ARG3): Ditto.
(UNW_NUM_EH_REGS): New macro.
(_UPT_resume): Declare.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm 7343841308 (unw_accessors_t): Add optional get_proc_name() callback.
(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm 9430d35c9b (_U_dyn_region_info_size): Define it in a more straight-forward manner.
(_U_dyn_op_label_state): Drop "qp" and "when" arguments.
(_U_dyn_op_copy_state): Ditto.
(_U_dyn_op_stop): Define qp to _U_QP_TRUE and when to -1.
(_U_QP_TRUE): New macro.

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm 9df94711bf (_U_TDEP_QP_TRUE): New macro.
(UNW_IA64_RP): New register-name.

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm 6863c4aaf5 (IA64_REG_PSP): Move it ino front of IA64_REG_BSP.
(tdep_get_proc_name): Delete.

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
hp.com!davidm c503981c39 (struct ia64_global_unwind_state): Add member "r0".
(Logical change 1.55)
2003-02-26 08:33:57 +00:00
hp.com!davidm 43652d9dea (ia64): Undef this macro if it's defined (bug in Intel's ECC v7.0?).
(_Uia64_find_dyn_list): Add "gp" argument.

(Logical change 1.55)
2003-02-26 08:33:57 +00:00
hp.com!davidm cf3b756567 (_U_dyn_op_pop_frames): Fix typo in UNW_DYN_POP_FRAMES.
(Logical change 1.55)
2003-02-26 08:33:57 +00:00
mostang.com!davidm e20ecc63b8 (unwi_get_proc_name): Don't make it an arch-object. Drop "is_local" argument.
(Logical change 1.54)
2003-02-22 08:19:43 +00:00
mostang.com!davidm e61440508f (unw_dyn_region_info_t): Make insn_count signed.
(Logical change 1.54)
2003-02-22 08:19:43 +00:00
hp.com!davidm ea34cc2bee (uc_off): Remove (it wasn't used anymore).
(Logical change 1.53)
2003-02-22 03:08:22 +00:00
mostang.com!davidm c341225693 (struct cursor): Remove rbs_right_edge.
(Logical change 1.52)
2003-02-21 07:36:26 +00:00
hp.com!davidm a45c88823a (likely): Make them work even for non-GCC (or old GCC) compilers.
(unlikely): Ditto.
(debug): Print to stderr.
(dprintf): Ditto.

(Logical change 1.48)
2003-02-15 03:10:30 +00:00
hp.com!davidm 74f568c602 Regenerate.
(Logical change 1.46)
2003-02-14 03:09:27 +00:00
mostang.com!davidm 108627cab7 Include "elf64.h".
(struct cursor): Add member "eh_valid_mask" to track which eh_args[] are valid.
	Fix comment for rbs_curr.
(tdep_get_elf_image): New routine.

(Logical change 1.45)
2003-02-08 10:10:59 +00:00
mostang.com!davidm 8c2740cfe3 (unw_tdep_fpreg_t): New type.
(UNW_TDEP_EH_ARG0): Make it an alias for r15.
(UNW_TDEP_EH_ARG1): Make it an alias for r16.
(UNW_TDEP_EH_ARG2): Make it an alias for r17.
(UNW_TDEP_EH_ARG3): Make it an alias for r18.

(Logical change 1.45)
2003-02-08 10:10:59 +00:00
mostang.com!davidm 981c8cc37b (UNW_REG_EH_ARG0): New well-known register name.
(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)
2003-02-08 10:10:59 +00:00
mostang.com!davidm f5265f56ba (HIDDEN): Make it empty unless we have at least GCC v3.3.
(unwi_get_proc_name): Also return the offset relative to the returned function-name.
(struct elf_image): New structure.

(Logical change 1.45)
2003-02-08 10:10:59 +00:00
hp.com!davidm 644c919345 Rename UNW_IA64_AR_25 to UNW_IA64_AR_CSD, as per SDM v2.1.
(_Uia64_search_unwind_table): Declare.
(_Uia64_find_dyn_list): Declare as "extern".
(_Uia64_get_kernel_table): Declare.

(Logical change 1.43)
2003-01-28 03:40:06 +00:00
hp.com!davidm a69cf3deb9 Regenerate.
(Logical change 1.43)
2003-01-28 03:40:06 +00:00
hp.com!davidm 68bdac3681 Add declarations for the _UPT_* helper routines (libunwind via ptrace helpers).
(Logical change 1.43)
2003-01-28 03:40:06 +00:00
hp.com!davidm bb25a5ed3b (tdep_search_unwind_table): Explicitly call _Uia64_search_unwind_table().
Remove declaration of same name; this is now done in libunwind-ia64.h.

(Logical change 1.43)
2003-01-28 03:40:06 +00:00
mostang.com!davidm 717cb71374 (struct cursor): Add "cfm" cache.
(Logical change 1.42)
2003-01-23 18:47:51 +00:00
mostang.com!davidm 6dbc6777a3 (struct cursor): Rename rbs_wridx to rbs_right_edge, rbs_nvalid to rbs_left_edge,
and reserve two extra slots in rbs_area[].

(Logical change 1.41)
2003-01-23 10:04:09 +00:00
mostang.com!davidm 7e268d256d (mi_init): Avoid name-space pollution: make mi_init() an arch-object.
(Logical change 1.41)
2003-01-23 10:04:09 +00:00
mostang.com!davidm 8b17d136c5 (struct cursor): Replace rbs_top and top_rnat_loc with rbs_wridx, rbs_curr,
rbs_nvalid, and rbs_area.  Add new member sigcontext_off.

(Logical change 1.40)
2003-01-21 17:41:20 +00:00
mostang.com!davidm 313653f66e (likely): New macro.
(unlikely): Ditto.
(NELEMS): Ditto.

(Logical change 1.39)
2003-01-21 08:08:32 +00:00
mostang.com!davidm b5fe317cc8 (UNW_TDEP_CURSOR_LEN): Define.
(UNW_PI_FLAG_IA64_RBS_SWITCH_BIT): New macro.
(UNW_PI_FLAG_IA64_RBS_SWITCH): Ditto.

(Logical change 1.39)
2003-01-21 08:08:32 +00:00
mostang.com!davidm 26f6cf761e (UNW_TDEP_CURSOR_LEN): Define.
(Logical change 1.39)
2003-01-21 08:08:32 +00:00
mostang.com!davidm a4bea2c466 (UNW_STATE_LEN): Remove (replaced by UNW_TDEP_CURSOR_LEN).
(UNWPI_FLAG_FIRST_TDEP_BIT): Define.
Fix typo in comment: LITTLE not LITLE...

(Logical change 1.39)
2003-01-21 08:08:32 +00:00
mostang.com!davidm 0440c53608 Fix checkin lossage.
(Logical change 1.37)
2003-01-17 18:12:55 +00:00
mostang.com!davidm a38baad7f3 (unw_init_local): Fix typo: the context type should be unw_context_t.
(Logical change 1.35)
2003-01-17 07:48:52 +00:00
mostang.com!davidm 8ec7b349f1 Initial revision 2003-01-14 07:11:56 +00:00
mostang.com!davidm 6d611572ef (Logical change 1.33) 2003-01-14 07:11:56 +00:00
mostang.com!davidm 2d80409b22 Rename: src/mempool.h -> include/mempool.h
(Logical change 1.32)
2002-12-19 07:16:50 +00:00
mostang.com!davidm 9f32da41c3 Initial revision 2002-12-19 07:16:50 +00:00
mostang.com!davidm a60cacd8f5 Include "mempool.h">
(struct cursor): Move to here from unwind_i.h.
(struct ia64_global_unwind_state): Ditto.

(Logical change 1.32)
2002-12-19 07:16:50 +00:00
mostang.com!davidm db59d4f98f (struct cursor): Rename from "struct ia64_cursor".
(Logical change 1.32)
2002-12-19 07:16:50 +00:00
mostang.com!davidm 20a6c1adf1 (get_accessors): Make it an arch-obj.
(flush_cache): Ditto.
(set_caching_policy): Ditto.
(regname): Ditto.

(Logical change 1.32)
2002-12-19 07:16:50 +00:00
mostang.com!davidm 93daa3b08d (UNW_TARGET_IA64): Define.
(Logical change 1.32)
2002-12-19 07:16:50 +00:00
mostang.com!davidm bf070a994a (UNW_DEBUG): Move here from ia64/unwind_i.h
(debug): Ditto.
(dprintf): Ditto.
(inline): Ditto.
(mi_init): Declare.

(Logical change 1.32)
2002-12-19 07:16:50 +00:00
mostang.com!davidm a85267d16b (Logical change 1.32) 2002-12-19 07:16:50 +00:00
mostang.com!davidm 1c8ee38936 (_Uia64_find_dyn_list): Declare and document this ia64-specific helper routine.
(Logical change 1.31)
2002-12-18 05:18:40 +00:00
mostang.com!davidm 793c8a3005 Initial revision 2002-12-12 09:17:41 +00:00
mostang.com!davidm 744b910408 Clarify comment on how when to use a pointer type and when to use unw_word_t.
(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)
2002-12-12 09:17:41 +00:00
mostang.com!davidm 01e35a5d93 Add copyright header and forward-declration of ia64_cursor.
2002/12/05 15:32:45-08:00 mostang.com!davidm
Rename: src/ia64/script.h -> include/ia64/script.h

(Logical change 1.30)
2002-12-12 09:17:41 +00:00
mostang.com!davidm b29266f262 (unw_sysdep_search_unwind_table): Remove.
(Logical change 1.30)
2002-12-12 09:17:41 +00:00
mostang.com!davidm b6251b0f41 (unw_proc_info_t): Remove proc_name member and replace it with unw_get_proc_name().
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)
2002-12-12 09:17:41 +00:00
mostang.com!davidm 653c9006ac (Logical change 1.30) 2002-12-12 09:17:41 +00:00
mostang.com!davidm dfc08eaef4 Rewrite to resemble something that actually might work.
(Logical change 1.29)
2002-12-03 08:19:58 +00:00
mostang.com!davidm 50d7a155ff Add include of <libunwind-dyamic.h>.
(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)
2002-12-03 08:19:58 +00:00
mostang.com!davidm b1c1f146cc (struct unw_ia64_table): Delete.
(unw_sysdep_search_unwind_table): New macro.

(Logical change 1.29)
2002-12-03 08:19:58 +00:00
hp.com!davidm d7e9f75df6 (Logical change 1.28) 2002-11-23 02:12:30 +00:00
hp.com!davidm f7d795a412 Initial revision 2002-11-23 02:12:30 +00:00
mostang.com!davidm 87bc2e3242 Document which routines are signal-safe.
(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)
2002-11-16 06:50:04 +00:00
mostang.com!davidm aca3843d6f Switch to MIT license.
(Logical change 1.26)
2002-11-16 03:25:36 +00:00
mostang.com!davidm 16f2189512 (unw_caching_policy_t): New type.
(unw_set_caching_policy): New function.
(unw_flush_cache): Ditto.

(Logical change 1.22)
2002-11-09 07:59:02 +00:00
mostang.com!davidm 193ba2859f (HAVE___THREAD): Mention it.
(Logical change 1.22)
2002-11-09 07:59:02 +00:00
mostang.com!davidm 3569969a3e Update copyright message.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm cfe616f0f6 Undefine HAVE_GETUNWIND by default.
(Logical change 1.18)
2002-04-25 06:47:29 +00:00
mostang.com!davidm 74775e31d9 (unw_tdep_getcontext): Make it an expression returning zero (no error).
(Logical change 1.16)
2002-04-12 05:02:40 +00:00
mostang.com!davidm 58142c0a21 (unw_regname): New routine to obtain canonical name of a register.
(Logical change 1.16)
2002-04-12 05:02:40 +00:00
hp.com!davidm 76166fb955 (UNW_PREFIX): Include the target name in the prefix.
2002/04/05 14:33:32-08:00 hp.com!davidm
Rename: include/libunwind.h -> include/libunwind-common.h

(Logical change 1.12)
2002-04-05 23:37:55 +00:00
hp.com!davidm 5a0a6457b1 Initial revision 2002-04-05 23:37:55 +00:00
hp.com!davidm 1f3b87ad50 Add multi-architecture support: include libunwind-common.h instead
of having a libunwind.h include the target-specific header.

(Logical change 1.12)
2002-04-05 23:37:55 +00:00
hp.com!davidm 2a8477a76a (UNW_PREFIX): Include the target name in the prefix.
}(Logical change 1.12)
2002-04-05 23:37:55 +00:00
mostang.com!davidm 5c6360b856 (unw_tdep_is_fpreg): New macro.
(Logical change 1.11)
2002-04-04 19:04:09 +00:00
mostang.com!davidm 4208867819 (unw_is_fpreg): New macro.
(Logical change 1.11)
2002-04-04 19:04:09 +00:00
hp.com!davidm f1d10c0fb3 (unw_tdep_save_loc_t): New type.
(Logical change 1.10)
2002-04-03 06:51:34 +00:00
hp.com!davidm 48da72afd7 (unw_save_loc_t): New member "extra" to hold arch-specific save-location info.
(unw_get_save_loc): Define.

(Logical change 1.10)
2002-04-03 06:51:34 +00:00
mostang.com!davidm 99639fb162 Rename UNW_IA64_CURRENT_BSP to UNW_IA64_BSP.
(Logical change 1.9)
2002-04-01 23:01:22 +00:00
mostang.com!davidm 70dd4fbccf (unw_save_loc_type_t): New type.
(unw_save_loc_t): New type.
(get_save_loc): New prototype.

(Logical change 1.9)
2002-04-01 23:01:22 +00:00
mostang.com!davidm 96e3133a62 Remove include of libunwind-config.h. Include libunwind-tdep.h instead of
opencoding an architecture-specific include.

2002/02/23 12:16:40-08:00 mostang.com!davidm
Rename: include/libunwind.h.in -> include/libunwind.h

(Logical change 1.7)
2002-02-23 20:27:03 +00:00
mostang.com!davidm 95ce9146a7 Initial revision 2002-02-23 20:27:03 +00:00
mostang.com!davidm 9da5d9e6ec Delete: include/libunwind-config.h
}(Logical change 1.7)
2002-02-23 20:27:03 +00:00
mostang.com!davidm 1a9fe6168d (Logical change 1.7) 2002-02-23 20:27:03 +00:00
(none)!davidm 0d1108748f Delete: include/config.h
}(Logical change 1.6)
2002-02-22 22:09:28 +00:00
(none)!davidm cfdd6ece84 Include architecture-specific header file first and then define
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)
2002-02-22 21:58:53 +00:00
(none)!davidm cd66944a2c (unw_tdep_word_t): New type.
(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)
2002-02-22 21:58:53 +00:00
mostang.com!davidm 7fbfe0a255 (Logical change 1.3) 2002-02-15 23:22:05 +00:00
mostang.com!davidm 63669f7ad4 Initial revision 2002-02-15 23:22:05 +00:00