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

2828 commits

Author SHA1 Message Date
mostang.com!davidm
74fc55a61a Add routines to control caching policy. The caching policy can be set to
(1) single (global) cache, (2) per-thread cache, or (3) no cache at all.
This is loosely based on a per-thread cache patch by Brian Sumner.

BKrev: 3dccc046NlGdtX_BSyDVZDR6vE4lIw
2002-11-09 07:59:02 +00:00
mostang.com!davidm
0a7fdb7878 Add call to LIBUNWIND___THREAD.
(Logical change 1.22)
2002-11-09 07:59:02 +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
57c6184925 (struct unw): Remove "hash" member.
(ia64_init): Replace cache-initialization with call to ia64_script_cache_init().

(Logical change 1.22)
2002-11-09 07:59:02 +00:00
mostang.com!davidm
e196ffd7eb (struct ia64_script_cache): New structure (broken out from global unwind state).
(Logical change 1.22)
2002-11-09 07:59:02 +00:00
mostang.com!davidm
d7d0463d0b (ia64_per_thread_cache) [HAVE___THREAD]: New variable.
(flush_script_cache): New function.
(get_script_cache): Ditto.
(ia64_script_lookup): Modify to support multiple (in particular: per-thread) caches.
(script_new): Add explicit "cache" pointer argument.
(ia64_script_lookup): Add multi-cache support.
(build_script): Ditto.
(ia64_find_save_locs): Ditto.
(ia64_script_cache_init): New function.

(Logical change 1.22)
2002-11-09 07:59:02 +00:00
mostang.com!davidm
56c93299f0 (LIBUNWIND__THREAD): New test.
(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
027b1d967f Regenerated with automake.
(Logical change 1.21)
2002-11-09 03:59:27 +00:00
mostang.com!davidm
e633236827 (ia64_getfp): Change from macro to inline function. Check "loc" argument for
being NULL before dereferencing it.
(ia64_putfp): Ditto.
(ia64_get): Ditto.
(ia64_put): Ditto.

(Logical change 1.21)
2002-11-09 03:59:27 +00:00
mostang.com!davidm
dee2508b2c (Logical change 1.21) 2002-11-09 03:59:27 +00:00
mostang.com!davidm
9f708e3bb2 Initial revision 2002-11-09 03:59:27 +00:00
mostang.com!davidm
8da6258e3e Fix comment regarding frame and preserved registers.
Add a note on the meaning of of UNW_IA64_BSP.

(Logical change 1.21)
2002-11-09 03:59:27 +00:00
mostang.com!davidm
4583a3fc27 Fix bugs reported by Robert Faught:
(unw_get_save_loc): Handle b6 like b7.
(unw_get_save_loc): Fix typo: "if (!sloc)" was meant to be "if (!loc)".

(Logical change 1.21)
2002-11-09 03:59:27 +00:00
mostang.com!davidm
6c1ccd723f Fix bugs reported by Robert Faught and Brian Sumner.
BKrev: 3dcc881fIVyOxMG7qkRqmLxDlPFR1w
2002-11-09 03:59:27 +00:00
mostang.com!davidm
e0ac536efc (noinst_PROGRAMS): Mention test-init and test-varargs.
(Logical change 1.21)
2002-11-09 03:59:27 +00:00
mostang.com!davidm
6a0ac2b8a4 (ia64_scratch_loc): Handle b6 like b7. Reported by Robert Faught.
(ia64_access_reg): Ditto.

(Logical change 1.21)
2002-11-09 03:59:27 +00:00
mostang.com!davidm
3f5161f47f Sanitize contents.
(Logical change 1.20)
2002-09-26 23:09:01 +00:00
mostang.com!davidm
aa54b9f4a8 (Logical change 1.20) 2002-09-26 23:09:01 +00:00
mostang.com!davidm
27cce00964 Initial revision 2002-09-26 23:09:01 +00:00
mostang.com!davidm
75c93b844a Include autoconf/automake-generated files.
BKrev: 3d93938d5QNIU4qjrq1AGnqCIc7BQA
2002-09-26 23:09:01 +00:00
mostang.com!davidm
4e1f57e38f Use -Wall when compiling with GCC.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
3569969a3e Update copyright message.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
fc116ff852 Replace malloc()/free() with private memory allocator to avoid deadlock issues
and problems under low-memory conditions.  This is accomplished via the mempool
interface (see mempool.h).

BKrev: 3d363ceagprsu6_TUZv4rJkQui-iSg
2002-07-18 03:58:34 +00:00
mostang.com!davidm
3fbd1a1d68 Minor formatting fixes.
(struct ia64_reg_state): Moved here from parser.c.
(struct ia64_global_unwind_state): Add unwind_table_pool, state_record_pool,
	and labeled_state_pool.

(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
b4d191544a Keep list of things to test.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
dd3c681c6a (Logical change 1.19) 2002-07-18 03:58:34 +00:00
mostang.com!davidm
5b6078357d Initial revision 2002-07-18 03:58:34 +00:00
mostang.com!davidm
7e8c5066e8 Include <unistd.h>.
(sighandler): Correct return type to "void".  Delete unused variables buffer[] and n.
(main): Cast sighandler to (sighandler_t).

(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
21647f4830 Include <stdlib.h>.
(sighandler): Parenthesize IP check.

(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
0938b03201 Added doc/Dwarf3-draft7-011029-dif-draft6.pdf doc/dwarf-2.0.0.pdf src/mempool.c~ src/mempool.h~ to the ignore list
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
b04ff63c65 (update_frame_state): Print debug output when catching sigcontext location.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
a2284ed1f3 (unw_get_save_loc): Remove unused variables sc_addr and ret.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
76a2d6a18b (struct ia64_labeled_state): Move to unwind_i.h.
(alloc_reg_state): Use mempool interface.
(free_reg_state): Ditto.
(alloc_labeled_state): Ditto.
(free_labeled_state): Ditto.
(alloc_spill_area): Fix spill-area allocation (fix by Richard Henderson).
(desc_frgr_mem): Fix case for f16-f31 (fix by Richard Henderson).
(get_proc_info): Use mempool_alloc() instead of malloc().

(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
641d801905 (libunwind_la_SOURCES_common): Mention mempool.h and mempool.c.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
ce831876f2 (ia64_init): Initialize mempools.
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
d603a5b4bb (ia64_access_reg): r15-r18 should refer to sigcontext IFF the cursor is currently
pointing at the signal trampoline frame.  Otherwise, raising an exception from within
a signal handler will fail to pass the exception arguments to the exception handler.

(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
e3cb03d7b6 (get_kernel_table): Use sos_alloc()/sos_free() instead of malloc()/free().
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
9ac7c9cda2 (common_int): Explicitly declare return type as "int".
(Logical change 1.19)
2002-07-18 03:58:34 +00:00
mostang.com!davidm
5a9743cd77 (b): Add a printf() after raise_exception() to avoid triggering the sibcall
optimization for this call.

(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
1c0d73e27d Replace uses of IA64_FLAG_SIGTRAMP flag by checks against sigcontext_loc.
(Logical change 1.18)
2002-04-25 06:47:29 +00:00
mostang.com!davidm
c0a60b6f82 (Logical change 1.18) 2002-04-25 06:47:29 +00:00
mostang.com!davidm
f7381ce536 Initial revision 2002-04-25 06:47:29 +00:00
mostang.com!davidm
af6fe37119 Include <stdlib.h>.
(ia64_init): Initialize debug level from UNW_DEBUG_LEVEL environment variable.

(Logical change 1.18)
2002-04-25 06:47:29 +00:00
mostang.com!davidm
e324c4c115 Include <libunwind-ia64.h> instead of <libunwind.h> (this program is slightly
ia64-specific).
(sighandler): Rename rp to ip.
(doit): Declare argument as volatile pointer.

(Logical change 1.18)
2002-04-25 06:47:29 +00:00
mostang.com!davidm
934d3b52b0 Fix up things so that unwinding across signal handlers starts to work.
BKrev: 3cc7a681Zo3mtY13CWzcMbI5J8kSKw
2002-04-25 06:47:29 +00:00
mostang.com!davidm
b847840474 Check for getunwind() system call.
(Logical change 1.18)
2002-04-25 06:47:29 +00:00
mostang.com!davidm
83ca335b08 Added src/Makefile.in~ to the ignore list
(Logical change 1.18)
2002-04-25 06:47:29 +00:00
mostang.com!davidm
039f99fef0 (update_frame_state): Fix handling of sigtramp frames. Also work around bugs
in kernel unwind info.

(Logical change 1.18)
2002-04-25 06:47:29 +00:00