1
0
Fork 0
mirror of https://github.com/tobast/libunwind-eh_elf.git synced 2024-11-08 10:18:13 +01:00
Commit graph

447 commits

Author SHA1 Message Date
Martin Milata
d93d96ad83 Fix compilation on IA64
- Add tdep macro for {dwarf,ia64}_find_unwind_table so that ia64
   doesn't try to use dwarf code.
 - Fix extraneous #if.
 - Fix mistyped filename in Makefile.am.
 - Link ia64-specific tests with correct libraries.

Signed-off-by: Martin Milata <mmilata@redhat.com>
2012-05-23 20:52:28 -07:00
Arun Sharma
46dfe3ecf5 Fixup whitespace in Makefile. 2012-03-14 17:20:58 -07:00
Arun Sharma
7e5d2791f9 Update namespace checks for dwarf_find_unwind_tables 2012-03-12 20:11:49 -07:00
Arun Sharma
6da4dde70e Compile fix for platforms other than linux-i386 2012-03-12 20:11:49 -07:00
Arun Sharma
f0bb806ecb Move the test case to tests dir. 2012-03-12 20:11:49 -07:00
Ken Werner
3977724e82 Add missing <signal.h> include directive
The testcase tests/Gtest-dyn1.c uses the signal() function and should
therefore include the corresponding header file.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-10-29 17:12:43 -07:00
Ken Werner
9a311bf48b [ARM] fix for the check-namespace test case
Add ARM specific symbols and ignore some symbols generated by the ARM Linux
default linker script.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-10-15 23:10:28 -07:00
Arun Sharma
42b67080eb Fix linker errors with recent binutils
Without this, tests that called unw_getcontext() got a linker error

Signed-off-by: Arun Sharma <asharma@fb.com>
2011-10-15 23:03:46 -07:00
Arun
f89fb17695 Fix incorrect calls to memset.
Found when compiling libunwind with clang.

Signed-off-by: Paul Pluzhnikov <ppluzhnikov@google.com>
2011-10-02 22:43:28 -07:00
Arun Sharma
1d8e2c1ae5 Explicitly specify the libraries
Without this linking fails with gold and newer versions of ld.
2011-09-10 19:57:10 -07:00
Sven Neumann
f195c9ad52 Skip a few tests on uCLibC
Without this, the build fails on platforms that don't implement
backtrace().
2011-08-27 21:54:52 -07:00
Arun Sharma
4dbc2bcb94 Fix a compiler warning
backtrace() needs execinfo.h
2011-08-15 20:19:47 -07:00
Ken Werner
288f18f7ae ARM: tests/Gtest-dyn1.c workaround for GCC bug.
Temporarily workaround for a GCC bug that prevents code from obtaining the
thumb marker: https://bugs.launchpad.net/gcc-linaro/+bug/721531.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-04-21 17:25:42 +02:00
Ken Werner
3b917f2d16 ARM: tests/Gtest-dyn1.c fixes.
Define an appropriate fdesc struct and its corresponding accessors that take
care of the thumb marker on ARM. Call the __clear_cache built-in instead of
flush_cache if the GNU compiler is used.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-04-21 17:25:42 +02:00
Ken Werner
a624812e2a ARM: tests/Gtest-trace.c - IP printing
Print the instruction pointer on ARM as well.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-04-21 17:25:42 +02:00
Ken Werner
d589e20506 Add the appropriate libraries to the *_LDADD variables.
The test-async-sig.c, test-flush-cache.c and Ltest_resume_sig.c define
UNW_LOCAL_ONLY and therefore only need LIBUNWIND_local. Gtest-dyn1.c is
calling '_U_dyn_cancel' and test-trace.c is using 'unw_backtrace' which
are in LIBUNWIND_local.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-04-21 17:25:42 +02:00
Ken Werner
e4593e2493 Increase alternate signal stack size.
Creating an alternate signal stack with a size of SIGSTKSZ (usually 8k) is
not enough on some targets because unw_cursor_t is bigger than that already.
Since the size of unw_cursor_t is part of the ABI the UNW_TDEP_CURSOR_LEN
can't be changed without breaking existent code. Therefore size of the
alternate signal stack has been increased to 1 MiB.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-04-05 20:59:10 -07:00
Arun Sharma
d86155f72e Add a test to catch calls to calloc from libunwind
We'd like to avoid calls to all malloc related functions
so libunwind is still usable from such allocators.

Signed-off-by: Paul Pluzhnikov <ppluzhnikov@google.com>
2011-04-05 20:59:03 -07:00
Arun Sharma
4dc222cf8a Undo parts of 2f9b04e9c2
Linking to local unwind library seems to be unrelated to
failures seen earlier.
2011-04-05 13:41:29 -07:00
Lassi Tuura
5f38f35d5d Drop a call frame in tdep_trace and avoid a call to unw_step.
Dropping the extra frame for unw_backtrace itself using unw_step is
approximately 15% slower than skipping the frame in tdep_trace.  So
drop the frame in the latter, and make the function a private
implementation detail for libunwind, not an exported interface.

Also moves unw_getcontext call back into unw_backtrace to avoid an
extra call frame in case slow_backtrace does not get inlined into
unw_backtrace.
2011-04-01 00:00:39 -07:00
Lassi Tuura
50bc12afba Export unw_backtrace() and alias backtrace() to it. 2011-04-01 00:00:33 -07:00
Arun Sharma
2f9b04e9c2 Mark slow_backtrace() ALWAYS_INLINE
Also fix Makefile.am so remote unwinding tests such Gtest-trace
don't link with the local unwind library (libunwind.a).
2011-03-31 22:58:07 -07:00
Arun Sharma
27d0dbfecb Ensure tests pass on 32 bit x86. 2011-03-25 14:34:41 -07:00
Lassi Tuura
3b9fd99cb7 Assign copyright as requested by the author. 2011-03-25 00:20:49 -07:00
Arun Sharma
741a5a2149 Add some performance tests for fast backtracing. 2011-03-25 00:20:46 -07:00
Arun Sharma
7ff83c051e Fix up compilation and test failures 2011-03-24 23:32:25 -07:00
Lassi Tuura
9e98f15e9a Fast back-trace for x86_64 for only collecting the call stack.
Adds new function to perform a pure stack walk without unwinding,
functionally similar to backtrace() but accelerated by an address
attribute cache the caller maintains across calls.
2011-03-24 22:33:17 -07:00
Arun Sharma
6c1a58fd06 Remove the unused arm_extbl_test_LDADD from Makefile.am 2011-03-24 21:49:17 -07:00
Ken Werner
6e25c11505 Remove the arm-extbl-test.
This test case relies on old libunwind internals such as the arm_stackframe.
Since the ARM extbtl-parser now operates on the DWARF model directly the
arm-extbl-test isn't of any particular use anymore.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-03-24 20:42:01 -07:00
Konstantin Belousov
04fc88fa31 Fix build and distribution on the FreeBSD.
Signed-off-by: Konstantin Belousov <kostikbel@gmail.com>
2011-03-24 20:41:07 -07:00
Arun Sharma
0613d4c680 Fixup trailing whitespace
Signed-off-by: Arun Sharma <asharma@fb.com>
2011-03-22 08:40:49 -07:00
Arun Sharma
57695518b3 Replace libuwind-elf32.la with $(LIBUNWIND_ELF)
This was needed to fix build errors on x86_64.

Signed-off-by: Arun Sharma <asharma@fb.com>
2011-03-22 08:34:33 -07:00
Zachary T Welch
4870386087 Add test of backtracing using ARM-specific tables
Uses .ARM.exidx and .ARM.extbl sections to produce a backtrace.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-03-22 08:15:03 -07:00
Zachary T Welch
13cd3b0c26 Fix test-ptrace argument parsing.
Avoids an endless loop when passing unknown options.

Signed-off-by: Zachary T Welch <zwelch@codesourcery.com>
Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-03-07 21:24:51 -08:00
Ken Werner
c2cc122a62 Explicitly add dependent shared libraries.
This adds support for linkers that do not pull in the dependent shared
libraries of libunwind-$(arch).la and libunwind-setjmp.la implicitly.

Signed-off-by: Ken Werner <ken.werner@linaro.org>
2011-03-07 21:24:50 -08:00
Zachary T Welch
7e767a2838 Improve test LDADD settings.
Eliminates unused libraries from test program linking.  Substitutes
'$(top_builddir)' for '..' to clarify library locations.

Signed-off-by: Zachary T Welch <zwelch@codesourcery.com>
2010-11-29 11:28:35 -08:00
Zachary T Welch
651e9bb4fd Add MAINTAINERCLEANFILES to Makefile.am files.
Ensures 'make maintainer-clean' removes files generated by autotools.

Signed-off-by: Zachary T Welch <zwelch@codesourcery.com>
2010-11-08 09:06:09 -08:00
Arun Sharma
982d590ddb Add Gtest-nomalloc.c to EXTRA_DIST so we pass "make check" 2010-08-04 15:11:19 -07:00
Arun Sharma
546463d1e7 Factor out and export dwarf_find_debug_frame() function
Signed-off-by: Andris Zeila <andris.zeila@accenture.com>
2010-05-26 19:21:30 -07:00
Arun Sharma
215afa30b7 Add unwind descriptors to getcontext.S 2010-04-28 16:32:30 -07:00
Arun Sharma
c2d78041cc GCC compatibility on x86 for C++ exception handling 2010-04-12 12:08:43 -07:00
Konstantin Belousov
fd88f41818 Merge remote branch 'origin/master' into freebsd
Conflicts:
	src/x86/Gis_signal_frame.c
	src/x86/Gstep.c
	src/x86_64/Gis_signal_frame.c
	src/x86_64/Gstep.c
2010-04-05 16:14:50 +03:00
Arun Sharma
8e53e62db9 Refactor os specific code for x86 (both 32 and 64 bit).
Move Linux specific code into ${arch}/Gos-linux.c
2010-04-04 16:46:13 -07:00
Konstantin Belousov
459b2a5ba8 Normalize test code 2010-04-04 17:09:33 +03:00
Konstantin Belousov
574d32a829 malloc.h is not needed. 2010-04-04 11:59:31 +03:00
Konstantin Belousov
6e07e94d5d Revert "Test for malloc.h."
This reverts commit 22b17269cf.
2010-04-04 11:57:57 +03:00
Konstantin Belousov
22b17269cf Test for malloc.h. 2010-04-03 23:34:33 +03:00
Konstantin Belousov
9bb9c972e6 Merge with origin/master 2010-03-31 16:01:38 +03:00
Arun Sharma
d3ddc9b96b Cap the runtime for rs-race 2010-03-10 22:57:43 -08:00
Arun Sharma
f8a15e9679 Fix a couple of test breakages on x86_64
setcontext() now restores the signal mask. Also remove a check
in the test that doesn't seem to be valid.
2010-03-10 22:52:12 -08:00
Arun Sharma
24112f6d9b Fix some test failures on x86_64 on distros with small default stacks. 2010-03-10 21:13:26 -08:00
Konstantin Belousov
d737709640 Close #if 2010-03-11 00:02:11 +02:00
Konstantin Belousov
3b026a7ed8 Fix i386 distinctions between freebsd and linux for mcontext. 2010-03-10 23:51:09 +02:00
Konstantin Belousov
4b3ca293bf Fix PT_SYSCALL ignoring of ip 2010-03-08 17:01:31 +02:00
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