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

726 commits

Author SHA1 Message Date
mostang.com!davidm
5b83414923 Move dyn-info-list address caching from call-backs into libunwind proper.
BKrev: 3e6d37b6qPCyWOkW7lcuZpXNxq-_AQ
2003-03-11 01:11:18 +00:00
mostang.com!davidm
cf9c4950bc Add include of "tdep.h".
(unwi_dyn_remote_find_proc_info): Maintain as->dyn_info_list_addr as a cache of
	the most recently obtained dyn-info-list address.

(Logical change 1.61)
2003-03-11 01:11:18 +00:00
mostang.com!davidm
5dc0e152a9 (unw_flush_cache): Also clear dyn_info_list_addr cache in the address space.
(Logical change 1.61)
2003-03-11 01:11:18 +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
63531d6f85 (struct UPT_info): Remove dyn_info_list_addr and checked_dyn_info_list_addr
members.

(Logical change 1.61)
2003-03-11 01:11:18 +00:00
mostang.com!davidm
7e7d86ade8 (_UPT_get_dyn_info_list_addr): Don't cache dyn-info-list address here. Do it
in libunwind proper instead.

(Logical change 1.61)
2003-03-11 01:11:18 +00:00
mostang.com!davidm
455b0acd97 Regenerate.
(Logical change 1.60)
2003-03-11 01:05:47 +00:00
mostang.com!davidm
cc297605d4 Initial revision 2003-03-11 01:05:47 +00:00
mostang.com!davidm
a494d61a86 Correct type in name of unw_local_addr_space.
(Logical change 1.60)
2003-03-11 01:05:47 +00:00
mostang.com!davidm
1c48aa0448 Add section on thread and signal safety.
(Logical change 1.60)
2003-03-11 01:05:47 +00:00
mostang.com!davidm
e77ab65264 Add man-pages for unw_init_local(3), unw_init_remote(3), unw_create_addr_space(3),
and unw_destroy_addr_space(3).  Correct typo in libunwind(3) man-page.

BKrev: 3e6d366beV9D6ftbgoXhSIerjBpjvA
2003-03-11 01:05:47 +00:00
mostang.com!davidm
346fb44f53 (man3_MANS): Mention unw_init_local.man, unw_init_remote.man,
unw_create_addr_space.man, and unw_destroy_addr_space.man.
(EXTRA_DIST): Mention unw_init_local.tex, unw_init_remote.tex,
	unw_create_addr_space.tex, and unw_destroy_addr_space.tex.

(Logical change 1.60)
2003-03-11 01:05:47 +00:00
mostang.com!davidm
40fe9d4459 (Logical change 1.60) 2003-03-11 01:05:47 +00:00
mostang.com!davidm
0f0eb30d78 Up version number to 0.9.
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
7a7d6113d4 Regenerate.
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
285c381cea Initial revision 2003-03-06 06:14:36 +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
00c5dee16b Include <assert.h>.
(_longjmp): Ensure that we have at least 4 exception-handling args.  (This code
	will need updating to make it work on x86, where only 2 exception handling
	args are available).
(longjmp): If we are compiling with GCC, use an alias-attribute to alias it with
	_longjmp().  This is more efficient and works around a gcc-3.2/ia64 bug
	which causes bad unwind info when a noreturn function is a last call.


(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
eeffb605f7 Include <assert.h>.
(_longjmp): Ensure that we have at least 4 exception-handling args.  (This code
	will need updating to make it work on x86, where only 2 exception handling
	args are available).

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
597f26ce83 Include "tdep.h".
(unwi_full_sigmask): Define here.
(mi_init): Initialize unwi_full_sigmask.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
d098282ff5 Include "tdep.h".
(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
4d64b2a210 Generate.
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
d396c31e6f Enable .resume callback.
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
e2561af01f Document that a local unw_resume() across threads results in undefined behavior.
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
eb6d0a751f Document behavior of r1 (gp) more accurately. Minor grammatical fixes.
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
0d7a2e92b0 Document _UPT_resume().
(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
4f6610b497 Add proper locking to ia64-implementation.
Implement _UPT_resume().
Lots of small fixes to make tar-based distribution work, make x86 target compile
again, etc.

BKrev: 3e66e74czhAdPIrEkhQdwJEf8gQVng
2003-03-06 06:14:36 +00:00
mostang.com!davidm
6a01dbb8df Add copyright message.
(SOSLOCK): Remove
(SOSUNLOCK): Ditto.
(LOCK): Ditto
(UNLOCK): Ditto.
(sos_alloc): If HAVE_CMPXCHG is defined, use cmpxchg_ptr() to atomically allocate
	memory in a lock-free manner.  Otherwise, fall back on disabling signal
	delivery and holding the sos_lock during memory allocation.
(sos_free): Remove.
(mempool_init): Initialize pool lock.  Replace LOCK/UNLOCK with appropriate
	signal-masking & mutex_lock/unlock calls.
(mempool_free): Replace LOCK/UNLOC with appropriate signal-masking & mutex_lock/unlock
	calls.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
2853523b39 (unwind_and_resume): Rename UNW_REG_EH_ARG0 to UNW_REG_EH+0 and UNW_REG_EH_ARG1 to
UNW_REG_EH+1.

(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
90c6107cae (unw_get_proc_name): Declare "offp" argument and pass it to unwi_get_proc_name().
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
3532dd4a4c (main): Add some explicit casts to avoid "unsigned/signed comparison" warnings.
(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
51f58db9b4 (libunwind_la_SOURCES_cdep): Mention _UPT_resume.c.
Delete obsolete comment.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
43cc4c9e59 (ia64_make_proc_info): If caching is enabled, call ia64_get_cached_proc_info()
to pick up cached proc-info (if available).

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
fe0ed7dd41 (ia64_getfp): Print debug message when accessing an unsaved register.
(ia64_putfp): Ditto.
(ia64_get): Ditto.
(ia64_put): Ditto.
(ia64_local_addr_space_init): Add missing declaration.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
mostang.com!davidm
d3ec5e94aa (cache_match): Remove locking comments.
(ia64_get_cached_proc_info): Rename from ia64_script_lookup() and modify it so
	it directly updates the proc-info if the necessary script is in the cache.
(script_new): Remove locking comments and adjust formatting.
(ia64_find_save_locs): If global caching is enabled, mask signal delivery and
	hold the cache lock while accessing the cache.
(ia64_script_cache_init): Initialize the cache lock.


(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
515fd742bd (Logical change 1.59) 2003-03-06 06:14:36 +00:00
mostang.com!davidm
623c4cb79a (EXTRA_DIST): New macro. Mention run-ia64-test-dyn1.
(Lia64_test_stack_SOURCES): Mention ia64-test-stack.h.
(Gia64_test_stack_SOURCES): Ditto.
(Lia64_test_rbs_SOURCES): Mention ia64-test-rbs.h.
(Gia64_test_rbs_SOURCES): Ditto.

(Logical change 1.59)
2003-03-06 06:14:36 +00:00
hp.com!davidm
33182308c6 Merge bk://unwind@bkbits.net/libunwind
into wailua.hpl.hp.com:/home/davidm/src/unwind/libunwind

2003/03/04 16:13:44-08:00 hp.com!davidm
Make sure elfxx.h and elfxx.c get distributed.  Reported by Arun
Sharma.

BKrev: 3e654146-959Szs5FKTAqJu9pNq4KQ
2003-03-05 00:13:58 +00:00
hp.com!davidm
57f0163a91 Auto merged
2003/03/04 16:13:44-08:00 hp.com!davidm
(EXTRA_DIST): New macro.  Mention elfxx.h and elfxx.c.  Reported by
	Arun Sharma.

(Logical change 1.58)
2003-03-05 00:13:58 +00:00
mostang.com!davidm
9d61294fde Include <assert.h>.
(main): Clean up region->op_count handling: op_count specifies the length of
	the array, not the number of valid op-entries.

(Logical change 1.57)
2003-02-27 17:33:20 +00:00
mostang.com!davidm
c302a346bb Clean up ia64-test-dyn1.c with respect to region->op_count.
BKrev: 3e5e4be0LeBIVPR63yfKpjYmBPQhig
2003-02-27 17:33:20 +00:00
mostang.com!davidm
64b4ac37da Use SIGUSR1/SIGUSR2 to start/stop backtrace() verification for trace_mode == TRIGGER.
(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
d6a0aa7059 Rename "epilogue_start" to "when_sp_restored".
(parse_dynamic): Fix it so it actually works.
(create_state_record_for): Initialize return_link_reg to zero.
	Don't print "no unwind info" unconditionally when UNW_DEBUG is
	in effect.

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
26f95915e4 Regenerate.
(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
62491cc719 Many fixes to get (remote) dynamic unwind info working for real.
Add get_proc_name() callback to accessors so things like the ptrace-support
routines can also print static procedure names.
Try running "tests/test-ptrace -v -t tests/ia64-test-dyn1" for fun.

BKrev: 3e5de161FPiuBUYgFoJGdYn3fGlUUQ
2003-02-27 09:58:57 +00:00