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

1795 commits

Author SHA1 Message Date
hp.com!davidm
a25f2e098c Merge bk://unwind@bkbits.net/libunwind
into wailua.hpl.hp.com:/home/davidm/src/unwind/libunwind

2004/04/20 09:53:04-07:00 hp.com!davidm
Improve compatibility with Intel v8.x compiler and the libunwind is
comes with.

BKrev: 408555980lwJMVxSNtaDV9gAnwbnRA
2004-04-20 16:53:44 +00:00
hp.com!davidm
36c7442db3 (Logical change 1.205) 2004-04-20 16:53:44 +00:00
hp.com!davidm
662957d585 Initial revision 2004-04-20 16:53:44 +00:00
hp.com!davidm
aa29b98f1d Check for dl_phdr_removals_counter.
Check whether compiler supports -static-libcxa option (needed when
building the shared objects with the Intel 8.x compiler).
(LDFLAGS_STATIC_LIBCXA): Substitute its value.

(Logical change 1.205)
2004-04-20 16:53:44 +00:00
hp.com!davidm
a9217ee2df Auto merged
2004/04/20 09:53:04-07:00 hp.com!davidm
Regenerate.

(Logical change 1.205)
2004-04-20 16:53:44 +00:00
hp.com!davidm
d512dc0daa Auto merged
2004/04/20 09:53:04-07:00 hp.com!davidm
(validate_cache): If HAVE_DL_PHDR_REMOVALS_COUNTER is defined, use
	dl_phdr_removals_counter() to validate the cache.  This is
	much more efficient than using dl_iterate_phdr(), since it
	avoids locking.

(Logical change 1.205)
2004-04-20 16:53:44 +00:00
hp.com!davidm
deb3c645a4 Auto merged
2004/04/20 09:53:04-07:00 hp.com!davidm
(forker_LDFLAGS): Mention -all-static.

(Logical change 1.205)
2004-04-20 16:53:44 +00:00
hp.com!davidm
36e094230c (intern_string): Cast buf-pointer to int8_t* to shut up Intel
compiler warning.

(Logical change 1.205)
2004-04-20 16:53:44 +00:00
hp.com!davidm
ed32b99716 (SOVERSION): Change from 2:0:1 to 3:0:2.
(COMMON_SO_LDFLAGS): New macro.
(libunwind_setjmp_la_LDFLAGS): Mention $(Common_SO_LDFLAGS).
(libunwind_ia64_la_LDFLAGS): Likewise.
(libunwind_hppa_la_LDFLAGS): Likewise.
(libunwind_x86_la_LDFLAGS): Likewise.
(libunwind_la_LDFLAGS): Likewise.
(libunwind_setjmp_la_LIBADD): Mention -lc.
(libunwind_ia64_la_LIBADD): Likewise.
(libunwind_hppa_la_LIBADD): Likewise.
(libunwind_x86_la_LIBADD): Likewise.
(libunwind_la_LIBADD): Likewise.
(libunwind_la_SOURCES_ia64): Mention mi/_ReadULEB.c and mi/_ReadSLEB.c.
	They are needed for Intel 8.0 libunwind.so compatibility. ;-(

(Logical change 1.205)
2004-04-20 16:53:44 +00:00
mostang.com!davidm
12191a02ac tests: Add test-async-sig.c to check for async-signal safety.
BKrev: 406bcea9dU2-V-_86YWfP_uDklkSxw
2004-04-01 08:11:21 +00:00
mostang.com!davidm
b9c2ed48de Regenerate.
(Logical change 1.204)
2004-04-01 08:11:21 +00:00
mostang.com!davidm
4471c1e8c3 (Logical change 1.204) 2004-04-01 08:11:21 +00:00
mostang.com!davidm
4cda328838 Initial revision 2004-04-01 08:11:21 +00:00
mostang.com!davidm
5de8024488 (check_PROGRAMS_cdep): Mention test-async-sig.
(test_async_sig_LDADD): New macro.

(Logical change 1.204)
2004-04-01 08:11:21 +00:00
mostang.com!davidm
24981bc5f9 Important bug-fix: dl_iterate_phdr() doesn't appear to be signal-safe.
To compensate, mask signal-delivery while it's running.

BKrev: 406bce38mhnWOUIL9WtYkHurmM2ajg
2004-04-01 08:09:28 +00:00
mostang.com!davidm
b8eefeac32 (validate_cache): Mask signal-delivery during dl_iterate_phdr().
(tdep_find_proc_info): Likewise.

(Logical change 1.203)
2004-04-01 08:09:28 +00:00
mostang.com!davidm
d3fad3af12 (dwarf_find_proc_info): Mask signal-delivery during dl_iterate_phdr().
(Logical change 1.203)
2004-04-01 08:09:28 +00:00
mostang.com!davidm
6d44be2c47 tests: Minor whitespace fixes for Gtest-concurrent.c.
BKrev: 406bb63aQDsDc6-AODSWlWin7fTdnw
2004-04-01 06:27:06 +00:00
mostang.com!davidm
471e4e5fa6 Minor whitespace fixes.
(Logical change 1.202)
2004-04-01 06:27:06 +00:00
mostang.com!davidm
b15a2bd5ef ia64: Based on patch by Todd L. Miller: extend semantics of
UNW_DYN_ALIAS to alias a sub-region of the aliased
	region.  The degenerate case of an empty subregion can
	then be used to alias with a particular IP.

BKrev: 406bb051XeM3TsszAsT3HGWlN0bBIA
2004-04-01 06:01:53 +00:00
mostang.com!davidm
93d627ef87 (desc_alias): New function.
(parse_dynamic): Handle UNW_DYN_ALIAS via desc_dynamic().

(Logical change 1.201)
2004-04-01 06:01:53 +00:00
mostang.com!davidm
835bb9110b Regenerate.
(Logical change 1.200)
2004-03-31 07:42:38 +00:00
mostang.com!davidm
38fe40cb1a Clarify that this routine is signal-safe only for the local
address-space.

(Logical change 1.200)
2004-03-31 07:42:38 +00:00
mostang.com!davidm
7e8488d45d Allow unw_get_proc_name() to be called from signal-handler (for
cursors in the local address-space).
Clarify that unw_get_proc_info(), unw_get_proc_info_by_ip(),
unw_init_remote(), unw_resume(), and unw_step() are async-signal
safe only from the local address-space (we can't make any guarantees
beyond that because of the dependency of the per-address-space
callback routines, which may have all kinds of restrictions).

BKrev: 406a766eg-xRWnoMgbI9aFyk1xBWXA
2004-03-31 07:42:38 +00:00
mostang.com!davidm
b511e18f63 Allow this routine to be called from a signal handler when unwinding
in the local address-space.

(Logical change 1.200)
2004-03-31 07:42:38 +00:00
mostang.com!davidm
77f159fe41 linux: Reimplement maps_init()/maps_next()/maps_close() such that
they are async-signal safe.  This in turn also makes
	unw_get_proc_name() async-signal safe (for the local address
	space).


BKrev: 406a755eLMN8_C9GHATuTYsY-pi8Lw
2004-03-31 07:38:06 +00:00
mostang.com!davidm
df77cf1ad7 (tdep_get_elf_image): Pass sizeof buffer to maps_next().
(Logical change 1.199)
2004-03-31 07:38:06 +00:00
mostang.com!davidm
64c702cea7 (ltoa): New inline function.
(skip_whitespace): Likewise.
(scan_hex): Likewise.
(scan_dec): Likewise.
(scan_char): Likewise.
(scan_string): Likewise.
(maps_init): Avoid stdio operations since they're not async-signal
	safe.
(maps_next): Likewise.
(maps_close): Likewise.

(Logical change 1.199)
2004-03-31 07:38:06 +00:00
mostang.com!davidm
fe9d715071 (get_proc_name): Minor whitespace fixes.
(Logical change 1.199)
2004-03-31 07:38:06 +00:00
mostang.com!davidm
18222990f2 (_UPT_get_dyn_info_list_addr): Pass size of path to maps_next().
(Logical change 1.199)
2004-03-31 07:38:06 +00:00
mostang.com!davidm
50c2be0ca3 Undo some temporary testing hacks.
(Logical change 1.198)
2004-03-31 07:29:27 +00:00
mostang.com!davidm
616931e74d Clean up some testing-hacks in Gperf-simple.c.
BKrev: 406a7357_ZoTjTPbK5Gk2mGDVsnNig
2004-03-31 07:29:27 +00:00
mostang.com!davidm
201f7d6671 Regenerate.
(Logical change 1.197)
2004-03-31 01:53:04 +00:00
mostang.com!davidm
e3eae74698 (gettime): Go back to gettimeofday(). clock_gettime() requires
librt which requires libpthread, which slows everything
	down.

(Logical change 1.197)
2004-03-31 01:53:04 +00:00
mostang.com!davidm
69052ef3ea (Lperf_simple_LDADD): Delete.
(Gperf_simple_LDADD): Likewise.

(Logical change 1.197)
2004-03-31 01:53:04 +00:00
mostang.com!davidm
59a11c9525 (Gperf-simple): Switch back from clock_gettime() to gettimeofday()
so we can avoid the (indirect) dependency on -lpthread,
	which slows everything down.

BKrev: 406a2480bpWS4g2Xic3BTD__9OLnTQ
2004-03-31 01:53:04 +00:00
mostang.com!davidm
3c4791af3d ia64: Document the asymmetry in compatibility between getcontext()
and unw_getcontext().

BKrev: 406a1641Npn2_hSJ6xj_0c5kK62x4Q
2004-03-31 00:52:17 +00:00
mostang.com!davidm
031c8bbae8 Regenerate.
(Logical change 1.196)
2004-03-31 00:52:17 +00:00
mostang.com!davidm
37e20822f4 Add new Platform-specific Notes section and document that getcontext()
can be used in lieu of unw_getcontext() but not vice versa.

(Logical change 1.196)
2004-03-31 00:52:17 +00:00
mostang.com!davidm
e0f02d4775 ia64: Remove perf-tuning code from unw_getcontext().
BKrev: 406a13d73SqBfhtdUcBHvwiaTNe7hg
2004-03-31 00:41:59 +00:00
mostang.com!davidm
50160e1df1 Remove perf-tuning code, make it fit in 80 columns.
(Logical change 1.195)
2004-03-31 00:41:59 +00:00
hp.com!davidm
3be31f5dcb Include <unistd.h> and <sys/resource.h>.
(KB): New macro.
(big): Lower the size to 64*MB.  Should be enough for another year... ;-)
(gettime): Fix typo and lower the assumed cache-line size from 64
	to 8 bytes just to be safe across platforms.
(measure_init): Lower N from 1000 to 100.
	(cursor): Add some padding between each unw_cursor_t to avoid
		benefitting from cache-line sharing.
	(uc): Likewise.
	Warm up the TLB before measuring the cold-cache cases.
(main): Unlimit the max. stack-size just in case.
	Write to "big" to ensure it's backed by real memory
	(not just by the zero page).

(Logical change 1.194)
2004-03-30 22:57:06 +00:00
hp.com!davidm
a4fef7cd62 Fix Gperf-simple.c so it truly can measure the cold-cache cases
for unw_getcontext() and unw_local_init().

BKrev: 4069fb42G_rF2zMtoAON24BBXWL7XQ
2004-03-30 22:57:06 +00:00
hp.com!davidm
2b07d73a5a Temporarily add various test-cases which help with performance-tuning.
(Logical change 1.193)
2004-03-30 22:50:23 +00:00
hp.com!davidm
811cc7b452 (unw_getcontext): More performance-tuning.
BKrev: 4069f9afyfw24-h0h2HHRrTIMNozLA
2004-03-30 22:50:23 +00:00
hp.com!davidm
74f73e711e (IA64_SC_FLAG_SYNCHRONOUS_BIT): New macro.
(SC_FLAGS): New macro.
(rTMP): Move from r14 to r10.
(rPOS): Move from r14 to r11.
(rCPOS): Move from r17 to r14.
(rNAT): Move from r18 to r15.
(rFLAGS): New macro.

(Logical change 1.193)
2004-03-30 22:50:23 +00:00
hp.com!davidm
4e9c3fb503 Rename: src/backtrace.c -> src/mi/backtrace.c
}(Logical change 1.192)
2004-03-30 01:56:19 +00:00
hp.com!davidm
14e36a6a51 Rename: src/backtrace.c -> src/mi/backtrace.c
(Logical change 1.192)
2004-03-30 01:56:19 +00:00
hp.com!davidm
5fa489ba06 Regenerate.
(Logical change 1.192)
2004-03-30 01:56:19 +00:00
hp.com!davidm
3a95b3c641 Initial revision 2004-03-30 01:56:19 +00:00