1
0
Fork 0
mirror of https://github.com/tobast/libunwind-eh_elf.git synced 2024-12-24 12:13:42 +01:00
Commit graph

713 commits

Author SHA1 Message Date
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
mostang.com!davidm
e31015f67f (Logical change 1.56) 2003-02-27 09:58:57 +00:00
mostang.com!davidm
1de6745d5b Initial revision 2003-02-27 09:58:57 +00:00
mostang.com!davidm
4577631094 Don't be verbose by default.
(main): Send SIGUSR1 before dynamic testing starts, SIGUSR2 afterwards (makes it
	easy for test-ptrace to catch when verification should begin).
	Add test case for func_vframe().

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
404230b56a Document _UPT_get_proc_name().
(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
4001ce198a (unwi_get_proc_name): For static procedures, use get_proc_name() callback if it's
non-NULL.

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
6a9c819f7f (unwi_extract_dynamic_proc_info): Clear lsda and unwind_info_size for
dynamic-info format.

(Logical change 1.56)
2003-02-27 09:58:57 +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
5428fc6295 (unw): Move "psp" member before "bsp_loc".
(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
03950aaf01 (lookup_symbol): Print debug output only at very high debug-level.
(get_proc_name): Take "pid" argument.

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
68c970298d (libunwind_la_SOURCES_cdep): Mention _UPT_get_proc_name.c.
(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
4c09dd6429 (intern_regions): Allow for empty region-list.
(intern_dyn_info): Skip over padding rather than fetching it.
	Start intern_regions() at address of first region, not just at the next
	sequential address.
(unwi_dyn_remote_find_proc_info): Allocate "di" dynamically (it needs to persist
	until put_unwind_info() is called).

(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
77ccc28ad9 (ia64_state_record): Rename epilogue_start to when_sp_restored.
(Logical change 1.56)
2003-02-27 09:58:57 +00:00
mostang.com!davidm
5939c41c09 (get_static_proc_name): New function.
(ia64_local_addr_space_init): Initialize get_proc_name callback.

(Logical change 1.56)
2003-02-27 09:58:57 +00:00