File libunwind-0.98.5.diff of Package libunwind
--- src/ia64/Gcreate_addr_space.c
+++ src/ia64/Gcreate_addr_space.c
@@ -33,14 +33,7 @@
#ifdef UNW_LOCAL_ONLY
return NULL;
#else
- unw_addr_space_t as = malloc (sizeof (*as));
-
- if (!as)
- return NULL;
-
- memset (as, 0, sizeof (*as));
-
- as->acc = *a;
+ unw_addr_space_t as;
/*
* IA-64 supports only big or little-endian, not weird stuff like
@@ -51,6 +44,14 @@
&& byte_order != __BIG_ENDIAN)
return NULL;
+ as = malloc (sizeof (*as));
+ if (!as)
+ return NULL;
+
+ memset (as, 0, sizeof (*as));
+
+ as->acc = *a;
+
if (byte_order == 0)
/* use host default: */
as->big_endian = (__BYTE_ORDER == __BIG_ENDIAN);
--- src/x86_64/Gresume.c
+++ src/x86_64/Gresume.c
@@ -35,6 +35,7 @@
x86_64_local_resume (unw_addr_space_t as, unw_cursor_t *cursor, void *arg)
{
# warning Implement me!
+ return -UNW_EINVAL;
}
#endif /* !UNW_REMOTE_ONLY */
--- tests/Gtest-concurrent.c
+++ tests/Gtest-concurrent.c
@@ -84,9 +84,10 @@
int i;
for (i = 0; i < NTHREADS; ++i)
- pthread_create (th + i, NULL, worker, NULL);
+ if (pthread_create (th + i, NULL, worker, NULL))
+ break;
- for (i = 0; i < NTHREADS; ++i)
+ while (i-- > 0)
pthread_join (th[i], NULL);
}
--- tests/Makefile.am
+++ tests/Makefile.am
@@ -22,8 +22,7 @@
check_PROGRAMS_arch = Gia64-test-stack Lia64-test-stack \
Gia64-test-nat Lia64-test-nat \
Gia64-test-rbs Lia64-test-rbs \
- Gia64-test-readonly Lia64-test-readonly \
- ia64-test-setjmp ia64-test-sig
+ ia64-test-sig
endif
check_SCRIPTS_cdep = run-ptrace-mapper run-ptrace-misc
check_PROGRAMS_cdep = Gtest-bt Ltest-bt Gtest-exc Ltest-exc \
@@ -57,8 +56,6 @@
noinst_PROGRAMS = $(noinst_PROGRAMS_common) $(noinst_PROGRAMS_cdep) \
$(noinst_PROGRAMS_arch)
-Lia64_test_readonly_SOURCES = Lia64-test-readonly.c ia64-test-readonly-asm.S
-Gia64_test_readonly_SOURCES = Gia64-test-readonly.c ia64-test-readonly-asm.S
Lia64_test_stack_SOURCES = Lia64-test-stack.c ia64-test-stack-asm.S \
ia64-test-stack.h
Gia64_test_stack_SOURCES = Gia64-test-stack.c ia64-test-stack-asm.S \
--- tests/Makefile.in
+++ tests/Makefile.in
@@ -73,9 +73,6 @@
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-nat$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-rbs$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-rbs$(EXEEXT) \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-readonly$(EXEEXT) \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Lia64-test-readonly$(EXEEXT) \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-setjmp$(EXEEXT) \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-sig$(EXEEXT)
am__EXEEXT_4 =
@REMOTE_ONLY_FALSE@am__EXEEXT_5 = forker$(EXEEXT) mapper$(EXEEXT) \
@@ -455,8 +452,7 @@
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@check_PROGRAMS_arch = Gia64-test-stack Lia64-test-stack \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-nat Lia64-test-nat \
@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-rbs Lia64-test-rbs \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ Gia64-test-readonly Lia64-test-readonly \
-@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-setjmp ia64-test-sig
+@ARCH_IA64_TRUE@@REMOTE_ONLY_FALSE@ ia64-test-sig
check_SCRIPTS = $(check_SCRIPTS_common) $(check_SCRIPTS_cdep) \
$(check_SCRIPTS_arch)
--- tests/ia64-test-setjmp.c
+++ tests/ia64-test-setjmp.c
@@ -34,6 +34,7 @@
#include <setjmp.h>
#include <signal.h>
#include <stdlib.h>
+#include <string.h>
#include <unistd.h>
#include <sys/mman.h>