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

493 commits

Author SHA1 Message Date
Konstantin Belousov
ad932154a6 Port test-ptrace 2010-03-08 00:50:50 +02:00
Konstantin Belousov
da357e3c2e Revert "sys/types.h"
This reverts commit 5976f1a5b3.
2010-03-08 00:20:23 +02:00
Konstantin Belousov
59d38aaccd Properly handle -ldl and -lutil 2010-03-07 12:46:05 +02:00
Konstantin Belousov
5976f1a5b3 sys/types.h 2010-03-06 17:47:26 +02:00
Konstantin Belousov
d7f5141075 MAP_ANONYMOUS 2010-03-06 16:46:52 +02:00
Paul Pluzhnikov
9626d66019 Fix a race condition in dwarf unwinding.
Original code was accessing rs_cache memory without holding a lock
in some cases. If there was sufficient cache pressure, entry being
accessed may be overwritten by another thread, resulting in a data
race.

We now make a thread local copy of the data, before releasing the
lock. If we end up supporting UNW_CACHE_PER_THREAD properly
in the future, this memcpy should be unnecessary.
2009-11-24 15:18:48 -08:00
Paul Pluzhnikov
890a630d76 Fix tests/Gtest-concurrent.c to test all caching policies
Greetings,

Attached patch is rather on the obvious side: setting caching policy and
than doing nothing is pointless; we'd better acutally test that it works!

Tested on Linux/x86_64.

Thanks,
--
Paul Pluzhnikov
2009-11-24 11:12:49 -08:00
Belisko Marek
570c09a2af Fix another compiler warning. 2009-10-16 14:26:55 -07:00
Paul Pluzhnikov
b56375e76a Reduce stack use and apply CONFIG_DEBUG_FRAME to more code.
Currently, libunwind allocates several PATH_MAX entries on stack, while
trying to find a binary via /proc/.../maps.

However stack space may be at premium (especially when sigaltstack is used),
and PATH_MAX on Linux is 4096, while SIGSTKSZ is only 8192 on x86.

Attached patch eliminates multiple PATH_MAX stack allocations, and simplifies
code in maps_next, at the cost of being unable to do anything if we can't
mmap one page. It appears to me that under such low-memory conditions,
libunwind will fail shortly elsewhere anyway.

This patch also disables more of debug_frame-handling code when
CONFIG_DEBUG_FRAME is undefined.

Tested on Linux/x86_64 with and without CONFIG_DEBUG_FRAME, no regressions.
2009-10-07 12:51:03 -07:00
Paul Pluzhnikov
b7e3444fea When libunwind is configured with --enable-block-signals=no,
we must block recursion via sighandlers by "external" means.
2009-09-25 14:17:35 -07:00
Arun Sharma
2fce54102c Implement _Unwind_GetIPInfo() as required by the C++ ABI
Provide a special implementation for ia64, because the unwind
information is such that an IP adjustment is not necessary before
looking up unwind info.

Bad things happen if libunwind only provides parts of the ABI and
the rest come from libgcc.

Signed-off-by: Jan Kratochvil <jan.kratochvil@redhat.com>
2009-04-02 22:22:05 -07:00
Arun Sharma
1227c41d20 Disable C++ exception support by default on x86. 2009-03-16 21:57:08 -07:00
Arun Sharma
0bce5f0016 Remove auto generated files. 2009-03-16 21:34:49 -07:00
Arun Sharma
83cef8b8f5 Don't check C++ ABI when it's not enabled. 2009-03-16 21:34:49 -07:00
Arun Sharma
576b59e4b1 Verify that we don't call malloc when unwinding locally. 2009-03-16 21:34:48 -07:00
Arun Sharma
ef29eade44 This patch eliminates one system call per unwind by not using the
getcontext in libc.

Also cleanup the namespace (check-name-space passes on x86_64 now).
Replace uses of offsets.h with ucontext_i.h.
Rename _x86_64_setcontext to _Ux86_64_setcontext.

TBD: Add CFI annotations for get/setcontext.

Signed-off-by: Paul Pluzhnikov <ppluzhnikov@google.com>
Signed-off-by: Arun Sharma <arun.sharma@google.com>
2008-06-16 14:42:16 -06:00
David Mosberger-Tang
183d28a066 Rebuild autoconf files with autoreconf. 2008-06-16 14:30:38 -06:00
Bruna Moreira
1eddefc371 [ARM] This patch add some missing bits on ARM platform.
* src/arm/unwind_i (arm_lock, arm_local_resume): Define.
 * src/ptrace/_UPT_find_proc_info.c: Handle ARM like X86 etc.
 * tests/flush-cache.S (flush_cache): Add (dummy) ARM-version.
	ARM does need executable stack, even on Linux...

Signed-off-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
Signed-off-by: Bruna Moreira <bruna.moreira@indt.org.br>
2008-04-21 13:43:18 -06:00
Bruna Moreira
6f282a00f5 [ARM] This patch fix some testsuite issues on ARM:
- Gtest-bt: like on x86/-64, the stack size passed to sigaltstack() is
  too small for ARM thus causing segmentation fault due to stack
  overflow.

- Gtest-dyn1: code size definition of dynamic function (template()) on
  testcase is too big for ARM architecture so memcpy() reads invalid
  memory causing random crashes (segmentation fault). A better
  solution would be to compile the function in a separate binary,
  mmap() it and memcpy() from it instead, so maximum size is known for
  sure.

- check-name-space.in: fix some "bashisms", it causes the script to
  fail to run on N8XX's busybox shell.

Signed-off-by: Anderson Lizardo <anderson.lizardo@indt.org.br>
Signed-off-by: Bruna Moreira <bruna.moreira@indt.org.br>
2008-04-21 13:39:11 -06:00
Daniel Jacobowitz
3842dac733 Add initial ARM and MIPS support. To support this, also enable the
reading of .debug_frame sections (used in lieu of .eh_frame sections
when they're not available).
2008-02-04 17:16:37 -07:00
David Mosberger-Tang
79c943b922 Make tests/perf-startup executable. Suggested by Mark Wielaard. 2007-12-10 09:34:57 -07:00
Jan Kratochvil
57e5696463 Mark Wielaard <mwielaard@redhat.com> writes:
On some systems executable stacks are denied. Since libunwind and the
tests don't actually need executable stacks this patch marks all
assembly files as not needing it.

The original patch comes from frysk:

2007-04-05  Jan Kratochvil  <jan.kratochvil@redhat.com>

    * src/hppa/getcontext.S, src/hppa/setcontext.S, src/hppa/siglongjmp.S,
    src/ia64/Ginstall_cursor.S, src/ia64/Linstall_cursor.S,
    src/ia64/dyn_info_list.S, src/ia64/getcontext.S, src/ia64/longjmp.S,
    src/ia64/setjmp.S, src/ia64/siglongjmp.S, src/ia64/sigsetjmp.S,
    src/ppc64/longjmp.S, src/ppc64/siglongjmp.S, src/x86/longjmp.S,
    src/x86/siglongjmp.S, src/x86_64/longjmp.S, src/x86_64/setcontext.S,
    src/x86_64/siglongjmp.S: Stack should be non-executable, for SELinux.

I added a couple more markers for new files in current libunwind.

Before this patch you would get the following on selinux enabled
systems without allow_exec_stack: error while loading shared
libraries:

libunwind.so.7: cannot enable executable stack as shared object
	requires: Permission denied

After the patch that error disappears and all test results are similar
to the results on systems without executable stack protection.
2007-10-01 08:35:01 -06:00
Jose Flavio Aguilar Paulino
4499bb29a6 [PPC32] First check-in to add preliminary support for Linux/PPC32. 2007-09-12 21:52:25 -06:00
Jose Flavio Aguilar Paulino
32e2187fab [PPC64] Get "make check" to work on PPC64 Linux. Add a README entry
describing the expected results.
2007-08-27 09:11:37 -06:00
David Mosberger-Tang
25739eec86 [IA64] Fix ia64-test-setjmp.c. With MAP_SHARED the kernel will try to
find a 1MiB-aligned region, which isn't what we want here.
2007-08-09 16:26:58 -06:00
David Mosberger-Tang
297315675e Recreate autoconf files. 2007-08-06 20:27:29 -06:00
Jose Flavio Aguilar Paulino
a1e7ee4836 Just a small patch to build system, it helps if you build in a power
without altivec.
2007-08-06 20:23:42 -06:00
David Mosberger-Tang
fad8b04c9f Rebuilt configure and Makefile.in files. 2007-08-06 19:56:28 -06:00
Jose Flavio Aguilar Paulino
b33021e4b2 Add PPC64 support. 2007-08-02 09:59:43 -06:00
Nurdin Premji
0fa6b58f5d 2007-03-20 Nurdin Premji <npremji@redhat.com>
* tests/mapper.c: Change alarm timeout to 80, as per discussion
	  at:
	http://lists.gnu.org/archive/html/libunwind-devel/2007-03/msg00005.html
2007-05-16 13:32:58 -06:00
Jan Kratochvil
565ffdb75c 2007-04-05 Jan Kratochvil <jan.kratochvil@redhat.com>
* tests/ia64-test-setjmp.c (doit): New forward declaration.
	(doit_pointer): New function pointer variable initialized to DOIT.
	(doit): Self-call made by an unoptimizable volatile indirect call.
2007-05-16 13:30:12 -06:00
David Mosberger-Tang
5f3d29562d * tests/test-async-sig.c: Move "const" definition to separate area to keep
things a bit neater looking.
* tests/test-ptrace.c: Likewise.

Signed-off-by: David Mosberger-Tang <dmosberger@gmail.com>
2007-05-16 13:19:46 -06:00
Jan Kratochvil
a72abd4e46 2007-04-05 Jan Kratochvil <jan.kratochvil@redhat.com>
* tests/test-ptrace.c (target_pid_kill): New function.
        (target_pid, main): TARGET_PID made static, for target_pid_kill ().
        (main): Register target_pid_kill () for atexit(3).

2007-04-04  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* tests/Gtest-dyn1.c, tests/test-async-sig.c, tests/test-ptrace.c:
	Fixed lockups on broken libunwind (as ppc64 is).

2007-03-07  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* tests/test-async-sig.c (do_backtrace): Limit maximum backtrace depth
	to 100 iterations; it workarounds FC6 DWARF-broken glibc.

2006-12-10  Jan Kratochvil  <jan.kratochvil@redhat.com>

        * tests/test-ptrace.c (main): Check for too many unexpected child
        signals, such as the common `SIGSEGV'.
2007-05-16 13:16:31 -06:00
David Mosberger-Tang
7923ae31a0 Re-run aclocal and automake to update Makefiles so new files (e.g.,
x86_64/gen_offsets.c) get distributed.
2007-04-10 20:35:15 -06:00
David Mosberger-Tang
9e927e7087 Restore tests/perf-startup.
Another file that got wiped out during the Bitkeeper->CVS->GIT translation.
2006-07-26 14:57:51 -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
cbd8648b33 Make libunwind compile with recent versions of GAS.
Don't test read-only access to F0 and F1 registers --- according to
the SCRA manual, those locations cannot even be expressed in SPILL
descriptors and newer versions of GAS (as well as IAS) won't accept
.spillreg directives targeting those registers.
2006-07-25 21:34:32 -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
d3d722fb0a Include "tdep-ia64/rse.h" instead of "ia64/rse.h".
(ARRAY_SIZE): New macro.

(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
da5e9ba297 (ARRAY_SIZE): Rename from NELEMS.
(Logical change 1.294)
2005-05-20 09:48:08 +00:00
hp.com!davidm
4f8a2291b4 Fix merge-conflict.
2005/05/17 14:14:23-07:00 hp.com!davidm
(check_static_to_scratch): Check contents of AR.EC.

(Logical change 1.293)
2005-05-17 21:28:19 +00:00
hp.com!davidm
3d881cd0cb (save_static_to_scratch): Initialize ar.ec.
(Logical change 1.293)
2005-05-17 21:28:19 +00:00
hp.com!davidm
e5426f4221 Auto merged
2005/05/17 06:10:13-07:00 hp.com!davidm
(save_pr): Declare
(check_pr): New function.
(all_funcs): Mention save_pr/check_pr.
(random_word): New function.
(check_pr): Likewise.
(check_rotate_regs): Call check_pr().
(run_check): Use random_word() instead of random() to get a word full of
	pseudo-random bits.

(Logical change 1.292)
2005-05-17 13:24:49 +00:00
hp.com!davidm
05feedabea (rotate_regs): Load up "pr" with first value. Preserve p63 across rotation.
(save_pr): New function.

(Logical change 1.292)
2005-05-17 13:24:49 +00:00
hp.com!davidm
b0406d0a2a (doit): Set stack-size attribute to increase likelihood that we're able
to create NTHREADS threads.  With NTHREADS==128 and the stack-size
	rlimit set to "unlimited", the test is otherwise likely to fail because
	on ia64 it will default to using 32MB of stack per thread.

(Logical change 1.291)
2005-05-05 09:23:46 +00:00
mostang.com!davidm
a5e8408d47 Include <string.h> to get memset() declared.
(consume_some_stack_space): New function.
(main): Call consume_some_stack_space() before establishing the
	rlimit.  Otherwise, stack-expansion may bump into
	the address-space rlimit.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
6ef1640a5f (main): Fix a typo in the argument-checking code.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
d9445c1f46 (handler): get_bsp() returns an integer, not a pointer.
(main): Do some silly FP computations.  On x86-64, this ensures
	that the signal handler invocations will always be called
	with the FPU-state saved as well.  Without this, the first
	signal was invoked without FPU-state, the second with, causing
	a spurious failure.

2004/11/17 02:06:25-08:00 mostang.com!davidm
(get_bsp): New function.
(handler): Clean up & check for error returns.
(main): Also fail if we didn't get SIGUSR2.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
3ff39e9fc9 (flush_cache): Provide dummy implementation for HPPA.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
mostang.com!davidm
1ee6b0ac74 (STACK_SIZE): SIGSTKSZ is also ridiculously small on x86-64 (at least
for SuSE LES 9) so use 128KB instead.
(do_backtrace): Also print backtrace obtained via backtrace().
(foo): Remove backtrace() call---now done in do_backtrace().

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
02c9034eb2 Tweak such that GCC v4 doesn't optimize it to the point where the
test fails (it managed to unravel the recursion in f1).

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
2f63c6c54e Regenerate.
2004/12/15 15:38:34-08:00 hp.com!davidm
Regenerate.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
b09eae1203 On PA-Linux, allow for _Uhppa_setcontext symbol.
2004/12/02 18:37:47-08:00 hp.com!davidm
Allow _U${plat}_get_elf_image symbol on HPPA, too.

2004/12/02 00:40:45-08:00 mostang.com!davidm
Add support for hppa.

2004/11/30 22:44:47-08:00 mostang.com!davidm
Add rules for x86-64.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
30dec34c3a Include "config.h" and <ia64intrin.h> if we have them.
2004/10/19 23:11:07-07:00 mostang.com!davidm
(got_here): New global variable.
(raise_exception): Fix off-by-2 error so that we _really_ step
	to the outermost a() frame.
(get_bsp): New function.
(__builtin_ia64_bsp): Remove.
(a): Print stack and bsp addresses as we recurse.
     When resuming execution in outermost a() frame (n==depth),
     clear "result" and set "got_here" so we know we landed in
     the right place.
(main): Don't accept arguments that cause "depth" to be < 1.
	When returning from a(), also check "got_here".  If
	the check failed, print result, got_here, and nerrors
	for diagnostic purposes.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
05246dbab7 Fix missing NELEMS -> ARRAY_SIZE rename.
2005/02/23 13:10:05-08:00 mostang.com!davidm
Adjust for "ia64_rse" to "rse" prefix change.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
95c9a4a21e Fix merge conflict.
2004/12/02 23:51:00-08:00 hp.com!davidm
(do_backtrace): Also print the symbol offset.  Increase nesting-level
	tolerance to 64 so we can test programs with deeply nested
	call-chains without triggering spurious warnings.


2004/11/30 22:44:47-08:00 mostang.com!davidm
(do_backtrace): Print IP if unw_get_proc_info() fails.

2004/11/23 18:01:09-08:00 mostang.com!davidm
(do_backtrace): Fix "start_ip might be used uninitialized" warning.

(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
83b02fa05b Add missing include of <string.h> to get strerror() declared.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
c0e81195b7 (doit): Fail gracefully if we fail to create all NTHREADS threads.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
9fa361ed37 (bar): Fix missing initialization warned on by GCC v4.
(Logical change 1.290)
2005-05-03 09:13:17 +00:00
hp.com!davidm
f60827dc5c (LIBUNWIND_local): New macro.
(LIBUNWIND): Mention $(LIBUNWIND_local).
(test_setjmp_LDADD): Likewise.
(ia64_teset_setjmp_LDADD): Likewise.

(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
hp.com!davidm
0f9f815cf1 Regenerate.
(Logical change 1.280)
2004-11-03 21:50:24 +00:00
hp.com!davidm
82e02ac518 Fix offsets in .*psp directives (subtract 16 to account for the fact that
GNU assembler used to encode this incorrectly).

(Logical change 1.278)
2004-10-15 13:57:10 +00:00
hp.com!davidm
07e9f4df89 Include "config.h" if we have it.
Include <errno.h>.
Include <ia64intrin.h> if we have it.
(get_bsp): New function.
(doit): Use get_bsp() instead of __builtin_ia64_bsp().
(main): Replace %m with %s/strerror(errno).

(Logical change 1.277)
2004-10-15 13:53:29 +00:00
hp.com!davidm
e4d5a22812 Regenerate.
(Logical change 1.276)
2004-10-15 13:48:38 +00:00
hp.com!davidm
beca885a4b (Logical change 1.276) 2004-10-15 13:48:38 +00:00
hp.com!davidm
935d735557 Initial revision 2004-10-15 13:48:38 +00:00
hp.com!davidm
9d47ce5331 (f): Move it to ident.c so the optimizer can't get rid of it.
(Logical change 1.276)
2004-10-15 13:48:38 +00:00
hp.com!davidm
b0048ee762 (do_backtrace): Keep track of initial IP so we can issue better error messages.
(main): Update comment for -t.

(Logical change 1.276)
2004-10-15 13:48:38 +00:00
hp.com!davidm
b4f1459444 (EXTRA_DIST): Mention run-ptrace-misc.
(check_SCRIPTS_cdep): Mention run-ptrace-misc.
(noinst_PROGRAMS_cdep): Mention test-ptrace-misc.
(Gtest_bt_SOURCES): New macro.
(Ltest_bt_SOURCES): Likewise.
(test_ptrace_misc_SOURCES)L: Likewise.

(Logical change 1.276)
2004-10-15 13:48:38 +00:00
homeip.net!davidm
b62e5e37b3 Regenerate.
(Logical change 1.271)
2004-10-05 16:28:06 +00:00
hp.com!davidm
7bd9b32b1d Regenerate.
(Logical change 1.270)
2004-09-15 11:37:04 +00:00
hp.com!davidm
23d9a14c4d (verbose): New variable.
(num_errors): Likewise.
(do_backtrace): Only print info if verbose is set.
(foo): Likewise.
(sighandler): Likewise.
(main): Likewise.
(bar): New function which is attempting to trigger a bug reported by
	Anthony Brewer which is caused by GAS apparently generating bad
	offsets for the psprel directive.
(f): New function.

}(Logical change 1.270)
2004-09-15 11:37:04 +00:00
hp.com!davidm
186cbb2957 (verbose): New variable.
(num_errors): Likewise.
(do_backtrace): Only print info if verbose is set.
(foo): Likewise.
(sighandler): Likewise.
(main): Likewise.
(bar): New function which is attempting to trigger a bug reported by
	Anthony Brewer which is caused by GAS apparently generating bad
	offsets for the psprel directive.
(f): New function.

2004/09/15 04:24:29-07:00 hp.com!davidm
Rename: tests/bt.c -> tests/Gtest-bt.c

(Logical change 1.270)
2004-09-15 11:37:04 +00:00
hp.com!davidm
18cd500bf7 (Logical change 1.270) 2004-09-15 11:37:04 +00:00
hp.com!davidm
373a106072 Initial revision 2004-09-15 11:37:04 +00:00
hp.com!davidm
dfa582a2df (noinst_PROGRAMS_cdep): Move bt to...
(check_PROGRAMS_cdep): ...here as Gtest-bt/Ltest-bt.

(Logical change 1.270)
2004-09-15 11:37:04 +00:00
mostang.com!davidm
34be77c7b2 (test_generic): Fix "unused variable" warning.
(Logical change 1.266)
2004-09-09 13:06:01 +00:00
mostang.com!davidm
112fcdd172 Regenerate.
(Logical change 1.261)
2004-09-08 17:36:28 +00:00
hp.com!davidm
f7671b5cf7 Regenerate.
(Logical change 1.259)
2004-08-31 13:59:10 +00:00
hp.com!davidm
197c9d517b Initial revision 2004-08-31 13:59:10 +00:00
hp.com!davidm
f789a1e1d1 Fix up a little so it's silent by default.
(Logical change 1.259)
2004-08-31 13:59:10 +00:00
hp.com!davidm
8f2272c097 (noinst_PROGRAMS_arch): Move ia64-test-sig to...
(check_PROGRAMS_arch): ...here.  Mention ia64-test-setjmp.
(ia64_test_setjmp_LDADD): Mention libunwind-setjmp.la.

(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
efa755a556 Add checks for __libunwind_* aliases.
(Logical change 1.255)
2004-08-20 11:35:37 +00:00
homeip.net!davidm
18acb92530 (flush_cache): Provide dummy-implementation for x86-64.
(Logical change 1.253)
2004-08-20 11:23:15 +00:00
homeip.net!davidm
982b64232d Regenerate.
(Logical change 1.252)
2004-08-19 14:03:54 +00:00
homeip.net!davidm
3eb739d290 (check_PROGRAMS_cdep): Move test-init-remote from check_PROGRAMS_common to here
so it doesn't get built in the REMOTE_ONLY-case.

(Logical change 1.252)
2004-08-19 14:03:54 +00:00
homeip.net!davidm
95dea64712 (do_backtrace): Delete unused variable "pi".
(Logical change 1.250)
2004-08-19 13:40:08 +00:00
bea.com!thallgre
779632ee82 Regenerate.
(Logical change 1.245)
2004-08-18 15:16:46 +00:00
bea.com!thallgre
0f818455ce Initial revision 2004-08-18 15:16:46 +00:00
bea.com!thallgre
511d542828 (check_local_unw_abi): Check for _U${plat}_strerror().
(check_generic_unw_abi): Likewise.

(Logical change 1.245)
2004-08-18 15:16:46 +00:00
bea.com!thallgre
42a90f14d5 (check_PROGRAMS_common): Mention test-strerror.
(Logical change 1.245)
2004-08-18 15:16:46 +00:00
bea.com!thallgre
48cc8c5712 (Logical change 1.245) 2004-08-18 15:16:46 +00:00
hp.com!davidm
0588a0bcc3 Regenerate.
(Logical change 1.243)
2004-08-18 10:50:12 +00:00
hp.com!davidm
b71d3fd5d2 Initial revision 2004-08-18 10:50:12 +00:00
hp.com!davidm
d5933d6e74 (check_PROGRAMS_common): Mention test-init-remote.
(Logical change 1.243)
2004-08-18 10:50:12 +00:00
hp.com!davidm
f9a2d5dfd8 (Logical change 1.243) 2004-08-18 10:50:12 +00:00
homeip.net!davidm
34fa122ac2 Regenerate.
(Logical change 1.241)
2004-08-17 15:34:28 +00:00
hp.com!davidm
1623029497 Regenerate.
(Logical change 1.239)
2004-07-15 17:39:59 +00:00
hp.com!davidm
7886a0d946 (create_func): Change %Zu to %zu.
(Logical change 1.236)
2004-05-12 20:54:56 +00:00
hp.com!davidm
72a03113c8 ia64: For remote-only-case, don't expect to find _Uia64_get_elf_image9) or
_Uia64_get_kernel_table().

(Logical change 1.234)
2004-05-07 00:30:27 +00:00
hp.com!davidm
30649af75a Pass arguments along to check-namespace.sh.
(Logical change 1.233)
2004-05-06 22:02:00 +00:00
hp.com!davidm
d7f8bd62d4 Add x86-specific checks.
(Logical change 1.233)
2004-05-06 22:02:00 +00:00
hp.com!davidm
683c9b4117 (main): Remove unused variable "i".
(Logical change 1.232)
2004-05-06 21:11:29 +00:00
hp.com!davidm
9fb355e096 (depth): New global variable.
(raise_exception): Make non-static, unwind "depth - 1" steps to get to
	top-most a() frame.
(__builtin_ia64_bsp): Also define for Intel-compiler.
(a): Restructure so it works in the face of global optimization and also
	remove GCC dependencies.
(main): Initialize depth based on argv[1].

(Logical change 1.232)
2004-05-06 21:11:29 +00:00
hp.com!davidm
d5c1bfe772 Regenerate.
(Logical change 1.231)
2004-05-06 20:26:29 +00:00
hp.com!davidm
de2a42042e (Logical change 1.231) 2004-05-06 20:26:29 +00:00
hp.com!davidm
9427f8eae4 Initial revision 2004-05-06 20:26:29 +00:00
hp.com!davidm
86bef150e4 (check_PROGRAMS_cdep): Mention Gia64-test-readonly and Lia64-test-readonly.
(Lia64_test_readonly_SOURCES): New macro.
(Gia64_test_readonly_SOURCES): Likewise.

(Logical change 1.231)
2004-05-06 20:26:29 +00:00
mostang.com!davidm
7b989938b7 Regenerate.
(Logical change 1.227)
2004-05-05 05:03:20 +00:00
mostang.com!davidm
74b22fed4c (check_generic_unw_abi): Check for _U${plat}_get_kernel_table() on
linux only.

(Logical change 1.227)
2004-05-05 05:03:20 +00:00
mostang.com!davidm
0c8baa7a79 (EXTRA_DIST): Also mention run-check-namespace.
(Logical change 1.227)
2004-05-05 05:03:20 +00:00
mostang.com!davidm
2d2129a5bc (sighandler): Adjust for <asm/rse.h> -> <ia64/rse.h> changes.
(Logical change 1.226)
2004-05-05 01:59:36 +00:00
mostang.com!davidm
542e026ae4 Regenerate.
(Logical change 1.225)
2004-05-05 01:58:44 +00:00
mostang.com!davidm
3640bb40a2 (Logical change 1.225) 2004-05-05 01:58:44 +00:00
mostang.com!davidm
3db9cf3812 Initial revision 2004-05-05 01:58:44 +00:00
mostang.com!davidm
5a468e30cc (EXTRA_DIST): Mention check-namespace.sh.in.
(check_SCRIPTS_common): Mention run-check-namespace.

(Logical change 1.225)
2004-05-05 01:58:44 +00:00
mostang.com!davidm
bd193e0509 Regenerate.
(Logical change 1.223)
2004-05-04 22:24:50 +00:00
mostang.com!davidm
4de259b49f (EXTRA_DIST): Mention run-ptrade-mapper.
(test_static_link_LDFLAGS): Replace -all-static with -static.
	The former doesn't work on HP-UX because libc doesn't appear
	to be availabale in archive format (only libc.so is available).
(forker_LDFLAGS): Likewise.

(Logical change 1.223)
2004-05-04 22:24:50 +00:00
mostang.com!davidm
823c634376 Regenerate.
(Logical change 1.222)
2004-05-04 22:19:18 +00:00
mostang.com!davidm
ba424722db (main): If HAVE_TTRACE is defined, fail unconditionally.
(Logical change 1.222)
2004-05-04 22:19:18 +00:00
mostang.com!davidm
6fbd639ea8 Include "ia64/rse.h" instead of <asm/rse.h>. The latter is
Linux-specific.
Include <sys/uc_access.h> if available.
(NELEMS): Delete (already defined in internal.h).
(all_funcs): Remove left-over #if 1 directives.
(sighandler): Add HP-UX support.
(enable_sighandler): Replace SA_NOMASK with SA_NODEFER.  The former
	is not available on HP-UX.
(disable_sighandler): Likewise.

(Logical change 1.221)
2004-05-04 22:16:57 +00:00
mostang.com!davidm
43ccdff0d9 Delete: tests/verify.c
}(Logical change 1.219)
2004-05-04 20:13:07 +00:00
mostang.com!davidm
907e49826a (test_local): Use unw_context_t instead of ucontext_t.
(Logical change 1.219)
2004-05-04 20:13:07 +00:00
mostang.com!davidm
4ff8fff57c (test_generic): Use unw_context_t instead of ucontext_t.
(Logical change 1.219)
2004-05-04 20:13:07 +00:00
hp.com!davidm
3ff119aa1d (put_unwind_info): New function.
(resume): Likewise.
(nop): Remove.
(main): Don't cast function pointer to different prototypes.  That's apparently
	not allowed.  icc v8.0 complains about it and GCC 3.5 will actually
	generate crashing code when this is done.  Talk about terminated with
	extreme prejudice!

(Logical change 1.213)
2004-04-23 00:12:51 +00:00
hp.com!davidm
d0de283084 (check_static_to_scratch): Remove extraneous printf-argument found by icc v8.0.
(Logical change 1.213)
2004-04-23 00:12:51 +00:00
hp.com!davidm
c9a01bf094 (MAX_FUNC_SIZE): New macro.
(main): Use MAX_FUNC_SIZE instead of open-coding 256 bytes.

(Logical change 1.210)
2004-04-21 23:46:17 +00:00
mostang.com!davidm
f20b7f838a Regenerate.
(Logical change 1.209)
2004-04-21 07:24:35 +00:00
mostang.com!davidm
3e718ea004 (Logical change 1.209) 2004-04-21 07:24:35 +00:00
mostang.com!davidm
35c9f15ab7 Initial revision 2004-04-21 07:24:35 +00:00
mostang.com!davidm
a4bd80c748 (print_names): New global.
(do_backtrace): Call unw_get_proc_name() only if print_names is TRUE.
(main): Support command-line option -c to turn on caching of
	unwind-info and -n to turn off the printing (and lookup)
	of symbol names.
	Stop execution if child dies with a signal.

(Logical change 1.209)
2004-04-21 07:24:35 +00:00
mostang.com!davidm
6cb58ac940 (check_SCRIPTS_cdep): Mention run-ptrace-mapper.
(noinst_PROGRAMS_cdep): Mention mapper.

(Logical change 1.209)
2004-04-21 07:24:35 +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
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
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
471e4e5fa6 Minor whitespace fixes.
(Logical change 1.202)
2004-04-01 06:27: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
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
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
mostang.com!davidm
fc7b49b983 (measure_init): Improve it so that we don't measure noise, such
as context-switches.

(Logical change 1.191)
2004-03-28 00:24:33 +00:00
mostang.com!davidm
96c6250626 Include <memory.h>.
(MB): New macro.
(big): New array.
(measure_unwind): Don't try to measure "init" step---it's too fast.
(f1): Likewise.
(doit): Likewise.
(sum): New function.
(measure_init): Measure unw_getcontext() and unw_local_init() here.
(main): Call measure_init(), adjust labels for doit() calls.

(Logical change 1.190)
2004-03-27 09:25:58 +00:00
hp.com!davidm
e8be590f3d Regenerate.
(Logical change 1.187)
2004-03-20 09:57:46 +00:00
mostang.com!davidm
c7fdc72fd6 Make number of iterations controllable via the second command-line
argument.
(gettime): Use clock_gettime() instead of gettimeofday() to get
	(potentially) better resolution.

(Logical change 1.186)
2004-03-20 09:54:28 +00:00
mostang.com!davidm
8e8fe50029 (Lperf_simple_LDADD): Mention -lrt.
(Gperf_simple_LDADD): Likewise.

(Logical change 1.186)
2004-03-20 09:54:28 +00:00
hp.com!davidm
5071803e5d (save_static_to_mem2): New function.
(save_static_to_mem3): Likewise.
(save_static_to_mem4): Likewise.
(save_static_to_mem5): Likewise.
(save_static_to_scratch): Save f4 to f6 to improve test coverage.

(Logical change 1.185)
2004-03-20 06:27:55 +00:00
hp.com!davidm
61d42ccf66 (check_static_to_memN): New function.
(check_static_to_mem2): Likewise.
(check_static_to_mem3): Likewise.
(check_static_to_mem4): Likewise.
(check_static_to_mem5): Likewise.

(Logical change 1.185)
2004-03-20 06:27:55 +00:00
mostang.com!davidm
18d33f37d5 (check_rotate_regs): Return adjust "vals"; add a printf() in verbose
mode.

(Logical change 1.184)
2004-03-19 08:18:44 +00:00
mostang.com!davidm
96d2898321 (CALL_NEXT_PTR): Like CALL_NEXT(), except that the two argument
registers are passed via macro args.
(CALL_NEXT): Define in terms of CALL_NEXT_PTR().
(rotate_regs): Fix it so it doesn't overwrite any local registers
	once they are rotated.  Note: it's OK to write the output
	registers, since those are outside of the rotating partition.

(Logical change 1.184)
2004-03-19 08:18:44 +00:00
hp.com!davidm
77a27f0baf Update with rotation-test.
(Logical change 1.183)
2004-03-19 02:38:39 +00:00
hp.com!davidm
94b71a1cd8 (LOAD_VAL): Use p15 instead of p6 so we don't step on save_static_to_scratch().
(flushrs): New function.
(rotate_regs): Likewise.


(Logical change 1.183)
2004-03-19 02:38:39 +00:00
mostang.com!davidm
23dd2c4c4a Update.
(Logical change 1.181)
2004-02-27 08:54:25 +00:00
hp.com!davidm
ad73ee3a77 Add include of <errno.h>, <string.h>, and <asm/rse.h>.
(save_static_to_scratch): New declaration.
(sighandler): New function.
(check_static_to_scratch): Likewise.
(enable_sighandler): Likewise.
(disable_sighandler): Likewise.
(check-static_to_stacked): Fix missing newline in error message.
(start_checks): Call disable_sighandler().
	Fix missing newline error messages.
(run_check): Call enable_sighandler() right before starting the checks.
(main): Fix missing newline in message.

(Logical change 1.179)
2004-02-27 00:59:41 +00:00
hp.com!davidm
1f3439fc5d (save_static_to_scratch): New routine.
(Logical change 1.179)
2004-02-27 00:59:41 +00:00
mostang.com!davidm
a2a1325c9f Fix copyright year and update file-comment.
(save_static_to_fr): Rename from save_static_to_fpreg().
(check_static_to_fr): Rename from check_static_to_fpreg().
(save_static_to_br): Declare.
(check_static_to_br): New function.
(save_static_to_mem): Declare.
(check_static_to_mem): New function.
(all_funcs): Mention new save/checks.

(Logical change 1.175)
2004-02-19 08:05:27 +00:00
mostang.com!davidm
a5ed5ae3b7 (LOAD_VAL): New macro.
(save_static_to_stacked): Use LOAD_VAL.
(save_static_to_fr): Rename from save_static_to_fpreg().
(save_static_to_br): New function.
(save_static_to_mem): Likewise.

(Logical change 1.175)
2004-02-19 08:05:27 +00:00
hp.com!davidm
330d2b5129 (all_funcs): Mention static_to_fpreg test & check.
(check_static_to_fpreg): New function.
(run_check): In verbose mode, print the run number.

(Logical change 1.171)
2004-02-19 01:32:27 +00:00
hp.com!davidm
c5b3064c05 (CALL_NEXT): New macro.
(save_static_to_fpreg): New function.

(Logical change 1.171)
2004-02-19 01:32:27 +00:00
hp.com!davidm
907bac3434 Regenerate.
(Logical change 1.170)
2004-02-19 01:30:13 +00:00
mostang.com!davidm
05a9101485 (Logical change 1.168) 2004-02-14 07:53:31 +00:00
mostang.com!davidm
a49786f031 Initial revision 2004-02-14 07:53:31 +00:00
mostang.com!davidm
66482c4494 Add copyright message.
(Logical change 1.168)
2004-02-14 07:53:31 +00:00
mostang.com!davidm
899323c996 (check_PROGRAMS_arch): Mention Gia64-test-nat and Lia64-test-nat.
(Lia64_test_nat_SOURCES): New macro.
(Gia64_test_nat_SOURCES): Likewise.

(Logical change 1.168)
2004-02-14 07:53:31 +00:00
hp.com!davidm
7cc016a29a (test_generic): Clean it up so it compiles cleanly and works for
REMOTE_ONLY case.

(Logical change 1.158)
2004-01-22 08:36:15 +00:00
mostang.com!davidm
bc0f731593 Regenerate.
(Logical change 1.157)
2004-01-21 06:36:35 +00:00
mostang.com!davidm
be177c8b06 Initial revision 2004-01-21 06:36:35 +00:00
mostang.com!davidm
e1da718101 Add copyright notice.
(Logical change 1.157)
2004-01-21 06:36:35 +00:00
mostang.com!davidm
0378f95492 (check_PROGRAMS_common): Mention test-static-link.
(perf): New target.
(test_static_link_SOURCES): New macro.
(test_static_link_LDFLAGS): Likewise.

(Logical change 1.157)
2004-01-21 06:36:35 +00:00
mostang.com!davidm
a54ee88009 (Logical change 1.157) 2004-01-21 06:36:35 +00:00
mostang.com!davidm
40a1558927 Include <libunwind-ptrace.h> instead of <libunwind.h>.
(Logical change 1.156)
2004-01-21 01:05:07 +00:00
mostang.com!davidm
95589da62c Regenerate.
(Logical change 1.152)
2004-01-14 06:21:52 +00:00
hp.com!davidm
32f19d0e09 (test_ptrace_LDADD): New macro.
(Logical change 1.151)
2004-01-03 10:50:24 +00:00
hp.com!davidm
d799003645 Regenerate.
(Logical change 1.137)
2003-12-05 00:45:03 +00:00
hp.com!davidm
dde43e2bee Initial revision 2003-12-05 00:45:03 +00:00
hp.com!davidm
d154b86e84 (check_PROGRAMS_cdep): Mention test-mem.
(Logical change 1.137)
2003-12-05 00:45:03 +00:00
hp.com!davidm
5e111c69df (Logical change 1.137) 2003-12-05 00:45:03 +00:00
hp.com!davidm
9441e6cb89 (STACK_SIZE): Make it 128KB on x86. SIGSTKSZ is far too small.
(Logical change 1.131)
2003-11-27 07:17:47 +00:00
hp.com!davidm
dcf293aa30 Cast printf() argument to avoid compiler-warning.
(Logical change 1.130)
2003-11-27 06:52:54 +00:00
hp.com!davidm
722933b6bc Cast printf() argument to avoid compiler warning.
(Logical change 1.130)
2003-11-27 06:52:54 +00:00
hp.com!davidm
06e572340e (a): Don't use inline-asm for Intel-compiler.
(Logical change 1.130)
2003-11-27 06:52:54 +00:00
hp.com!davidm
5e446b24d7 (ITERATIONS): New macro.
(maxlevel): New global variable.
(measure_unwind): Return init/step times via arg pointers.
(f1): Pass through init/step pointers.
(doit): New function.
(main): Use doit() instead of open code.

(Logical change 1.130)
2003-11-27 06:52:54 +00:00
hp.com!davidm
89d2adc59a Drop include of ia64intrin.h.
(Logical change 1.123)
2003-11-24 21:37:22 +00:00
hp.com!davidm
94f198b288 (handler): Adjust printf format to avoid compiler warning.
(Logical change 1.123)
2003-11-24 21:37:22 +00:00
hp.com!davidm
2c9be974dc Regenerate.
(Logical change 1.115)
2003-11-22 06:08:20 +00:00
mostang.com!davidm
e83a184218 Regenerate.
(Logical change 1.114)
2003-11-20 01:10:03 +00:00
mostang.com!davidm
7a346fbf8c Measure with caching disabled, global caching, and thread-local
caching.

(Logical change 1.114)
2003-11-20 01:10:03 +00:00
mostang.com!davidm
716484f000 (Logical change 1.114) 2003-11-20 01:10:03 +00:00
mostang.com!davidm
634e645f67 Initial revision 2003-11-20 01:10:03 +00:00
mostang.com!davidm
00f05d607b (check_PROGRAMS_cdep): Mention Gtest-concurrent and Ltest-concurrent.
(Ltest_concurrent_LDADD): New macro.
(Gtest_concurrent_LDADD): Ditto.

(Logical change 1.114)
2003-11-20 01:10:03 +00:00
hp.com!davidm
587bba5c1f Print normal output only if "verbose" mode is requested.
(Logical change 1.104)
2003-09-25 05:29:14 +00:00
hp.com!davidm
d7d831e9bb Fix x86 b
(Logical change 1.104)
2003-09-25 05:29:14 +00:00
hp.com!davidm
29f2f89a8f (measure_unwind): Return 0.
(Logical change 1.104)
2003-09-25 05:29:14 +00:00
hp.com!davidm
a237717fd7 (check_PROGRAMS_cdep): Move Gtest-init, Ltest-init, and
test-flush-cache to here from check_PROGRAMS_common.
	They cannot be compiled/used for REMOTE_ONLY configurations.

(Logical change 1.104)
2003-09-25 05:29:14 +00:00
hp.com!davidm
1c5c60b8ad Add some more debug statements and fix some typos.
(Logical change 1.103)
2003-09-25 05:08:18 +00:00