1
0
Fork 0
mirror of https://github.com/tobast/libunwind-eh_elf.git synced 2024-11-25 16:47:38 +01:00
Commit graph

361 commits

Author SHA1 Message Date
Arun Sharma
8cdd8bfed8 [x86-64] Make even UNW_LOCAL_ONLY accessors go through validation.
Signed-off-by: Arun Sharma <arun.sharma@google.com>
2006-07-26 21:39:46 -06:00
Arun Sharma
c5dc3c150a [dwarf] Allow return address column to differ from function to function.
Signed-off-by: Andrey Veskov <Andrey.Veskov@intel.com>
Signed-off-by: Arun Sharma <arun.sharma@google.com>
2006-07-26 21:29:50 -06:00
Arun Sharma
036cbfa020 Fix x86 compilation.
x86 needs the global_cache just like the x86-64 version.

Signed-off-by: Andrey.Veskov@intel.com
Signed-off-by: Arun Sharma <arun.sharma@google.com>
2006-07-26 21:20:59 -06:00
Arun Sharma
00db7f752a Implement a ip -> dwarf_reg_state cache.
Signed-off-by: Arun Sharma <arun.sharma@google.com>
2006-07-26 21:18:49 -06:00
David Mosberger-Tang
37be21c01e Restore more files wiped out by Bitkeeper->CVS->GIT transition. 2006-07-26 15:09:39 -06:00
David Mosberger-Tang
ca69fee8bb Merge ../libunwind-v0.98
Conflicts:

	include/dwarf_i.h
	include/x86/jmpbuf.h
	include/x86_64/jmpbuf.h
	src/hppa/init.h
	src/mi/Gget_fpreg.c
	src/mi/Gset_fpreg.c
	src/mi/strerror.c
2006-07-25 21:41:43 -06:00
David Mosberger-Tang
f176ad6fc6 Bring git v0.98.5 tree in sync with released v0.98.5.
Sadly, the conversion from Bitkeeper -> CVS -> git wasn't perfect.  Or
so it seems.
2006-07-25 21:32:28 -06:00
hp.com!davidm
b47b9aa232 UNW_IA64_BSP and UNW_IA64_SP are no longer read-only.
(Logical change 1.303)
2005-05-20 15:32:18 +00:00
hp.com!davidm
7a8b0ba617 (rbs_get_base): New macro.
(Logical change 1.297)
2005-05-20 13:13:07 +00:00
hp.com!davidm
d5ab898cdf (SOS_MEMORY_SIZE): Move to here from src/mi/mempool.c.
(Logical change 1.295)
2005-05-20 11:28:16 +00:00
hp.com!davidm
9d94c8f62b Rename: include/x86_64/jmpbuf.h -> include/tdep-x86_64/jmpbuf.h
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
e3ac62c5f1 Rename: include/x86_64/jmpbuf.h -> include/tdep-x86_64/jmpbuf.h
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
3a2c945244 Rename: include/x86/jmpbuf.h -> include/tdep-x86/jmpbuf.h
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
f6d4c74beb Rename: include/x86/jmpbuf.h -> include/tdep-x86/jmpbuf.h
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
e6cf7e84eb Rename: include/x86/dwarf-config.h -> include/tdep-x86/dwarf-config.h
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
d90772c868 Rename: include/x86/dwarf-config.h -> include/tdep-x86/dwarf-config.h
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
56cea5b4a9 Rename: include/ia64/script.h -> include/tdep-ia64/script.h
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
12f0ce1a39 Rename: include/ia64/script.h -> include/tdep-ia64/script.h
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
910087d5b5 Rename: include/ia64/jmpbuf.h -> include/tdep-ia64/jmpbuf.h
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
e86e18224d Rename: include/ia64/jmpbuf.h -> include/tdep-ia64/jmpbuf.h
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
983d841e64 Rename: include/hppa/jmpbuf.h -> include/tdep-hppa/jmpbuf.h
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
f8a07dfb22 Rename: include/hppa/jmpbuf.h -> include/tdep-hppa/jmpbuf.h
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
400a917a7a Rename: include/hppa/dwarf-config.h -> include/tdep-hppa/dwarf-config.h
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
c56b45e82e Rename: include/hppa/dwarf-config.h -> include/tdep-hppa/dwarf-config.h
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
180a1ececa Initial revision 2005-05-20 09:48:08 +00:00
hp.com!davidm
f9b7af51ed Include <libunwind.h> instead of "internal.h" and "mempool.h".
(dwarf_reg_state_pool): Move to dwarf_i.h.
(dwarf_cie_info_pool): Likewise.

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
3ad4903154 Include "libunwind_i.h" instead of "tdep.h".
Include "mempool.h".
(dwarf_reg_state_pool): Move here from dwarf.h.
(dwarf_cie_info_pool): Likewise.
Include "libunwind_i.h" instead of "tdep.h".

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
ead43e8545 Include "libunwind_i.h" instead of "internal.h".
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
59f9f6a1ac Include "libunwind_i.h" instead of "internal.h".
2005/05/19 08:11:38-07:00 hp.com!davidm
Rename: include/ia64/rse.h -> include/tdep-ia64/rse.h

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
5724bee8c2 Include "libunwind_i.h" instead of "internal.h".
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
5e5db2dada Adjust for renaming of file.
Drop include of <libunwind.h>.
Include "script.h" instead of "ia64/script.h".

}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
0870c54c2a Adjust for renaming of file.
Drop include of <libunwind.h>.
Include "script.h" instead of "ia64/script.h".

2005/05/19 07:42:45-07:00 hp.com!davidm
Rename: include/tdep-ia64.h -> include/tdep-ia64/libunwind_i.h

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
ce46ac7167 Adjust for renaming of file.
(tdep_put_unwind_info): Adjust for change of arguments.

}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
bea50a5d41 Adjust for renaming of file.
(tdep_put_unwind_info): Adjust for change of arguments.

2005/05/19 07:42:45-07:00 hp.com!davidm
Rename: include/tdep-x86_64.h -> include/tdep-x86_64/libunwind_i.h

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
47eca0fadf Adjust for renaming of file.
(tdep_put_unwind_info): Adjust for change of arguments.

2005/05/19 07:42:45-07:00 hp.com!davidm
Rename: include/tdep-x86.h -> include/tdep-x86/libunwind_i.h

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
34e70b5937 Adjust for renaming of file.
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
dce55286ab Adjust for renaming of file.
2005/05/19 07:42:45-07:00 hp.com!davidm
Rename: include/tdep-hppa.h -> include/tdep-hppa/libunwind_i.h

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
6980fa4f25 Adjust comment.
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
e5944788ad Adjust comment.
2005/05/19 08:13:00-07:00 hp.com!davidm
Rename: include/x86_64/dwarf-config.h -> include/tdep-x86_64/dwarf-config.h

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
c446186670 Add include of <stdlib.h>.
}(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
5135d044ed Add include of <stdlib.h>.
2005/05/19 07:42:56-07:00 hp.com!davidm
Rename: include/internal.h -> include/libunwind_i.h

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
c3e9383d30 (struct cursor): Add "ec_loc" member.
(Logical change 1.293)
2005-05-17 21:28:19 +00:00
mostang.com!davidm
836ee627e0 Rename: src/dwarf/dwarf-eh.h -> include/dwarf-eh.h
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
06d223e924 Initial revision 2005-05-03 09:13:17 +00:00
mostang.com!davidm
fbab73e7e6 Improve comment.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
fdb6bee068 Change "ia64_rse" prefix to "rse".
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
27f7d7d720 (unw_tdep_proc_info_t): Drop dwarf_info member.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
e7fba77e9d (unw_dyn_info_format_t): Remove UNW_INFO_FORMAT_DWARF_FDE.
(UNW_DYN_DFI_FLAG_FDE_PE_MASK): Remove.
(UNW_DYN_DFI_FLAG_AUGMENTATION_HAS_SIZE): Remove.
(unw_dyn_dwarf_fde_info_t): Remove.
(unw_dyn_info_t): Remove dfi member.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
66ecac1b5f (unw_addr_space): If we have atomic_ops.h, declare cache_generation
to be of type AO_t.

2004/10/25 17:43:57+02:00 homeip.net!davidm
(DWARF_IS_REG_LOC): Define as 0 for the local-only case.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
adeb9b5984 (struct dwarf_cursor): Add members eh_args and eh_valid_mask so
we can track writes to exception-handling argument regs.

2004/11/17 02:43:39-08:00 mostang.com!davidm
(dwarf_cie_info_pool): New declaration.
(dwarf_cie_info_t): New type.
(dwarf_state_record): Drop cfa_is_sp member.
(dwarf_extract_proc_info_from_fde): Rename from dwarf_parse_fde.

2004/10/25 17:38:51+02:00 homeip.net!davidm
Fix typo: DW_CFA_CFA_expression -> DW_CFA_expression.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
229d2c4a62 (atomic_read): New macro to read the value of a variable
that can be updated atomically (for Linux kernel compat.).
(unwi_full_mask): Rename from unwi_full_sigmask and change type to
	intrmask_t.
(intrmask_t): New type.
(define_lock): New macro.
(lock_init): Likewise.
(lock_acquire): Likewise.
(lock_release): Likewise.
(GET_MEMORY): Likewise.

2005/02/20 21:42:54-08:00 mostang.com!davidm
(ALWAYS_INLINE): Include "inline" keyword for compatibility with
	Linux kernel.
(ARRAY_SIZE): Rename from NELEMS for improved Linux-kernel
	compatibility.

2004/10/25 05:21:51-07:00 hp.com!davidm
(Debug): Make a debug level of N imply that we're printing when
	UNW_DEBUG_LEVEL=N since that's more intuitive.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
6dcb17c553 (UNW_X86_ECX): ecx apparently is a scratch-register (at least
under Linux).

2004/11/17 02:43:39-08:00 mostang.com!davidm
(unw_tdep_proc_info_t): Remove dwarf_info member.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
04fde4a63b (Logical change 1.290) 2005-05-03 09:13:17 +00:00
hp.com!davidm
f6b74c9cbe (ia64_get_cached_proc_info): Drop duplicate "ia64_" prefix.
(ia64_cache_proc_info): New function/macro.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
847e0a4b18 (dwarf_misaligned_value_t): Move "attribute" declaration to the type
to make newer versions of GCC happy.

2005/02/23 12:55:45-08:00 mostang.com!davidm
(dwarf_read_encoded_pointer_inlined): Adjust for ALWAYS_INLINE
	change.

2004/12/02 00:40:45-08:00 mostang.com!davidm
Make it possible for dwarf-config.h to define its own version of
dwarf_to_unw_regnum().

2004/11/23 16:59:56-08:00 mostang.com!davidm
(dwarf_to_unw_regnum): Make it a macro so we don't have a
dependency just because of including the file when --enable-debug
is on (and inlining is off).
(dwarf_read_encoded_pointer_inlined): Move from Gpe.c to here
	and rename from dwarf_read_encoded_pointer().

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
c224ec66c5 (UNW_HPPA_EH3): Fix comment-typo.
2004/12/02 18:37:47-08:00 hp.com!davidm
(unw_tdep_fpreg_t): Make it a union of "double" and two 32-bit words.
(unw_tdep_getcontext): Fix typo.

2004/12/02 00:40:45-08:00 mostang.com!davidm
(_U_TDEP_QP_TRUE): New macro.
(UNW_TDEP_CURSOR_LEN): Increase from 127 to 511 to accommodate
	DWARF cursor-size.
(unw_word_t): Change from uint64_t to uint32_t since user-land
	PA-Linux is only 32 bits.
(hppa_regnum_t): Add register names UNW_HPPA_EH0, UNW_HPPA_EH1,
	UNW_HPPA_EH2, UNW_HPPA_EH3, UNW_HPPA_CFA, and
	UNW_HPPA_EH.
(UNW_TDEP_NUM_EH_REGS): New macro.
(unw_tdep_getcontext): Point it at UNW_ARCH_OBJ(getcontext).

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
e12a996051 (HPPA_SCF_LINUX_SIGFRAME): Remove (PA-Linux appears to use only
real-time signal frames).
(tdep_big_endian): Fix typo.

2004/12/02 00:40:45-08:00 mostang.com!davidm
Include "elf32.h" and "dwarf.h".
(struct unw_addr_space): If we have atomic-ops, define cache_generation
	to be of type AO_t.
(struct cursor): Define it primarily in terms of the DWARF cursor.
	Add sigcontext_format and sigcontext_addr members.
Add DWARF-location accessors.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
homeip.net!davidm
7aade965b4 (DWARF_IS_REG_LOC): Define as 0 for the local-only case.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
272caabbfa Regenerate.
(Logical change 1.283)
2004-11-16 22:03:04 +00:00
mostang.com!davidm
8e96c357a8 (unw_addr_space): If we have atomic-ops library installed, declare
cache_generation as AO_t.
(dwarf_getfp): Do casts via "char *" to avoid type-punning
	warnings.
(dwarf_putfp): Likewise.

(Logical change 1.266)
2004-09-09 13:06:01 +00:00
mostang.com!davidm
a6aa7338cc (dwarf_getfp): Implement a first draft version of this routine
(completely untested).
(dwarf_putfp): Likewise.
(dwarf_get): Don't support fp-register save-locations.
(dwarf_put): Likewise.

(Logical change 1.264)
2004-09-09 10:50:06 +00:00
mostang.com!davidm
47bf99c677 (UNW_VERSION_CODE): New macro.
(UNW_VERSION): Likewise.

(Logical change 1.262)
2004-09-09 10:45:24 +00:00
mostang.com!davidm
27ce81f7e2 Initial revision 2004-09-08 17:36:28 +00:00
mostang.com!davidm
8de87a48cd (UNW_VERSION_MAJOR): New macro.
(UNW_VERSION_MINOR): Likewise.
(UNW_VERSION_EXTRA): Likewise.

}(Logical change 1.261)
2004-09-08 17:36:28 +00:00
mostang.com!davidm
012a4844cb (UNW_VERSION_MAJOR): New macro.
(UNW_VERSION_MINOR): Likewise.
(UNW_VERSION_EXTRA): Likewise.

2004/09/08 08:15:35-07:00 mostang.com!davidm
Rename: include/libunwind-common.h -> include/libunwind-common.h.in

(Logical change 1.261)
2004-09-08 17:36:28 +00:00
hp.com!davidm
197c9d517b Initial revision 2004-08-31 13:59:10 +00:00
hp.com!davidm
3b57368f67 (struct cursor): Clarify meaning of "rbs_curr" member.
(Logical change 1.259)
2004-08-31 13:59:10 +00:00
hp.com!davidm
e29611e7d3 (Logical change 1.259) 2004-08-31 13:59:10 +00:00
homeip.net!davidm
9034bd158a (struct dwarf_cursor): Add new member "cfa_is_sp" to mark the case
when the (unsaved) stack-pointer is the CFA.

(Logical change 1.253)
2004-08-20 11:23:15 +00:00
ibm.com!masbock
a766efd844 (Logical change 1.249) 2004-08-19 13:39:10 +00:00
ibm.com!masbock
58e37267be Initial revision 2004-08-19 13:39:10 +00:00
homeip.net!davidm
78e2f93811 (ALIAS): New macro.
(Logical change 1.246)
2004-08-19 10:45:23 +00:00
bea.com!thallgre
4b21fc9b3d (unw_strerror): Declare.
(Logical change 1.245)
2004-08-18 15:16:46 +00:00
homeip.net!davidm
34fa122ac2 Regenerate.
(Logical change 1.241)
2004-08-17 15:34:28 +00:00
hp.com!davidm
6a269233f8 (struct ia64_global_unwind_state): Group together in a single struct the
read-only registers whose addresses may be used as save-locations.

(Logical change 1.229)
2004-05-06 20:24:01 +00:00
mostang.com!davidm
582cfb1e62 (tdep_find_proc_info): Expand into dwarf_find_proc_info() only
when UNW_LOCAL_ONLY is defined.  Otherwise, expand
	into call via address-space's find_proc_info() callback.
(tdep_put_unwind_info): Likewise.  Delete bogus prototype.

(Logical change 1.224)
2004-05-05 01:54:53 +00:00
mostang.com!davidm
aa00843a30 Rename: src/ia64/rse.h -> include/ia64/rse.h
(Logical change 1.221)
2004-05-04 22:16:57 +00:00
mostang.com!davidm
2768b34dbe Initial revision 2004-05-04 22:16:57 +00:00
mostang.com!davidm
ad6f2319b9 (unw_tdep_getcontext): On HP-UX, use getcontext() instead of
_Uia64_getcontext().

(Logical change 1.220)
2004-05-04 20:14:02 +00:00
mostang.com!davidm
c5c4fc991c (_U_dyn_op): Avoid the use of C99-style initializers in installed
header-files.  Doing so may cause problems with C++ or
	older C compilers.  Reported by Todd Miller.

(Logical change 1.216)
2004-04-28 01:24:34 +00:00
hp.com!davidm
9a9618401f (mutex_init): Explicitly test function-pointer against 0 since that avoids
a compiler-warning from icc v8.0.
(mutex_lock): Likewise.
(mutex_unlock): Likewise.

(Logical change 1.213)
2004-04-23 00:12:51 +00:00
hp.com!davidm
2de1768e52 Regenerate.
(Logical change 1.205)
2004-04-20 16:53:44 +00:00
mostang.com!davidm
a1ce4c307e (unw_tdep_getcontext): Direct it to UNW_ARCH_OBJ(getcontext).
(Logical change 1.186)
2004-03-20 09:54:28 +00:00
mostang.com!davidm
1c00cf562e (unw_tdep_save_loc): Add new member "nat_bitnr". Define the
other 7 bytes (which were always there in unw_save_loc_t due
	to padding) as reserved for future use.

(Logical change 1.181)
2004-02-27 08:54:25 +00:00
mostang.com!davidm
7356cf80a5 (struct cursor): Add member "nat_bitnr".
(tdep_uc_addr): Add (optional) nat_bitnr pointer argument.

(Logical change 1.181)
2004-02-27 08:54:25 +00:00
mostang.com!davidm
50f7edcce5 (enum ia64_script_insn_opcode): Move Gscript-ia64.c.
(IA64_MAX_SCRIPT_LEN): Lower it by 4 since we no longer need separate
	instructions to update the NaT locations.

(Logical change 1.181)
2004-02-27 08:54:25 +00:00
hp.com!davidm
5f45c42420 (Debug): Add back lost Debug() macro for the !UNW_DEBUG case.
(Logical change 1.163)
2004-02-14 04:44:05 +00:00
hp.com!davidm
fe039e2c1f Move all inline functions to dwarf_i.h.
(Logical change 1.162)
2004-01-30 00:01:24 +00:00
hp.com!davidm
b88369b831 Initial revision 2004-01-30 00:01:24 +00:00
hp.com!davidm
86af3a3048 Declare functions such that it is possible to take their addresses.
(tdep_init): New macro.
(tdep_access_reg):  Likewise.
(tdep_access_fpreg): Likewise.

(Logical change 1.162)
2004-01-30 00:01:24 +00:00
hp.com!davidm
6bcc75010b Declare functions such that it is possible to take their addresses.
(Logical change 1.162)
2004-01-30 00:01:24 +00:00
hp.com!davidm
b5d64dabf3 Declare functions in the same way as we do in other header-files now, such that
it's possible to take the address of functions.
(debug): Remove this macro (no longer used).
(fetch8): Move to remote.h.
(fetch16): Likewise.
(fetch32): Likewise.
(fetchw): Likewise.

(Logical change 1.162)
2004-01-30 00:01:24 +00:00
hp.com!davidm
78cec36290 (struct cursor): Add member sigcontext_format.
(dwarf_putfp): Fix typo.
(dwarf_getfp): Mark with C preprocessor warning while it's not fully
	implemented.  Check for NULL-location first.
(dwarf_putfp): Likewise.
(dwarf_get): Likewise.
(dwarf_put): Likewise.
(tdep_needs_initialization): New macro.
(tdep_init): Likewise.
(tdep_get_as): Likewise.
(tdep_get_as_arg): Likewise.
(tdep_needs_initialization): Declare.

(Logical change 1.162)
2004-01-30 00:01:24 +00:00
hp.com!davidm
ab847fe68e (Logical change 1.162) 2004-01-30 00:01:24 +00:00
hp.com!davidm
107cf10470 (DWARF_REGNUM_MAP_LENGTH): New macro.
(dwarf_to_unw_regnum_map): Move to dwarf_i.h.
(dwarf_to_unw_regnum): Likewise.

(Logical change 1.162)
2004-01-30 00:01:24 +00:00
hp.com!davidm
29a98b6cc3 (unw_addr_space_t.shared_object_removals): Adjust type to
"unsigned long long" to match glibc.

(Logical change 1.161)
2004-01-24 07:27:00 +00:00
hp.com!davidm
6ea8ff61e0 (unw_set_caching_policy): Make it a regular object, not an
arch-object.  It can't be the latter because it needs
	to initialize libunwind if it's the first call to libunwind.

(Logical change 1.160)
2004-01-24 07:22:30 +00:00
mostang.com!davidm
c325d9cbc2 Regenerate.
(Logical change 1.159)
2004-01-24 06:45:18 +00:00
hp.com!davidm
c44d77055c Move debug defines after definition of UNWI_ARCH_OBJ().
Replace tdep_debug_level with unwi_debug_level and declare
it here.

(Logical change 1.158)
2004-01-22 08:36:15 +00:00
hp.com!davidm
d3725a7a98 (unw_tdep_is_fpreg): Move after include of "libunwind-common.h".
(Logical change 1.158)
2004-01-22 08:36:15 +00:00
hp.com!davidm
25b8795a4a (tdep_debug_level): Remove.
(Logical change 1.158)
2004-01-22 08:36:15 +00:00
mostang.com!davidm
5f0eebb2b4 Initial revision 2004-01-21 01:05:07 +00:00
mostang.com!davidm
53b6d61c63 Drop argument names from prototypes to reduce namespace pollution.
Define libunwind routines such that it is possible to take their
addresses.

(unw_is_fpreg): Move it closer to unw_getcontext().  Both are special
	in the sense that they may be implemented as macros.

(Logical change 1.156)
2004-01-21 01:05:07 +00:00
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