gc-7.2e (#892559)
This commit is contained in:
parent
6cfc37e692
commit
cfc443354e
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,2 +1,2 @@
|
|||||||
/gc-7.2c.tar.gz
|
|
||||||
/gc-7.2d.tar.gz
|
/gc-7.2d.tar.gz
|
||||||
|
/gc-7.2e.tar.gz
|
||||||
|
@ -1,67 +0,0 @@
|
|||||||
diff --git a/libatomic_ops/tests/test_atomic.c b/libatomic_ops/tests/test_atomic.c
|
|
||||||
index e354024..b8906e9 100644
|
|
||||||
--- a/libatomic_ops/tests/test_atomic.c
|
|
||||||
+++ b/libatomic_ops/tests/test_atomic.c
|
|
||||||
@@ -77,7 +77,10 @@ void * acqrel_thr(void *id)
|
|
||||||
{
|
|
||||||
AO_t my_counter1;
|
|
||||||
if (me != 1)
|
|
||||||
- fprintf(stderr, "acqrel test: too many threads\n");
|
|
||||||
+ {
|
|
||||||
+ fprintf(stderr, "acqrel test: too many threads\n");
|
|
||||||
+ abort();
|
|
||||||
+ }
|
|
||||||
my_counter1 = AO_load(&counter1);
|
|
||||||
AO_store(&counter1, my_counter1 + 1);
|
|
||||||
AO_store_release_write(&counter2, my_counter1 + 1);
|
|
||||||
diff --git a/libatomic_ops/tests/test_malloc.c b/libatomic_ops/tests/test_malloc.c
|
|
||||||
index a1f4179..a19ffd5 100644
|
|
||||||
--- a/libatomic_ops/tests/test_malloc.c
|
|
||||||
+++ b/libatomic_ops/tests/test_malloc.c
|
|
||||||
@@ -151,6 +151,7 @@ void * run_one_test(void * arg) {
|
|
||||||
if (0 == p) {
|
|
||||||
# ifdef HAVE_MMAP
|
|
||||||
fprintf(stderr, "AO_malloc(%d) failed\n", LARGE_OBJ_SIZE);
|
|
||||||
+ abort();
|
|
||||||
# else
|
|
||||||
fprintf(stderr, "AO_malloc(%d) failed: This is normal without mmap\n",
|
|
||||||
LARGE_OBJ_SIZE);
|
|
||||||
diff --git a/libatomic_ops/tests/test_stack.c b/libatomic_ops/tests/test_stack.c
|
|
||||||
index bf3180d..e654c35 100644
|
|
||||||
--- a/libatomic_ops/tests/test_stack.c
|
|
||||||
+++ b/libatomic_ops/tests/test_stack.c
|
|
||||||
@@ -97,14 +97,23 @@ void check_list(int n)
|
|
||||||
p = (list_element *)AO_REAL_NEXT_PTR(p -> next))
|
|
||||||
{
|
|
||||||
if (p -> data > n || p -> data <= 0)
|
|
||||||
- fprintf(stderr, "Found erroneous list element %d\n", p -> data);
|
|
||||||
+ {
|
|
||||||
+ fprintf(stderr, "Found erroneous list element %d\n", i);
|
|
||||||
+ abort();
|
|
||||||
+ }
|
|
||||||
if (marks[p -> data] != 0)
|
|
||||||
- fprintf(stderr, "Found duplicate list element %d\n", p -> data);
|
|
||||||
+ {
|
|
||||||
+ fprintf(stderr, "Found duplicate list element %d\n", i);
|
|
||||||
+ abort();
|
|
||||||
+ }
|
|
||||||
marks[p -> data] = 1;
|
|
||||||
}
|
|
||||||
for (i = 1; i <= n; ++i)
|
|
||||||
if (marks[i] != 1)
|
|
||||||
- fprintf(stderr, "Missing list element %d\n", i);
|
|
||||||
+ {
|
|
||||||
+ fprintf(stderr, "Missing list element %d\n", i);
|
|
||||||
+ abort();
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
volatile AO_t ops_performed = 0;
|
|
||||||
@@ -218,6 +227,7 @@ int main(int argc, char **argv)
|
|
||||||
int code;
|
|
||||||
if ((code = pthread_join(thread[i], 0)) != 0) {
|
|
||||||
fprintf(stderr, "Thread join failed %u\n", code);
|
|
||||||
+ abort();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
times[nthreads][exper_n] = (unsigned long)(get_msecs() - start_time);
|
|
@ -1,7 +1,6 @@
|
|||||||
diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h
|
diff -up gc-7.2/include/private/gcconfig.h.aarch64 gc-7.2/include/private/gcconfig.h
|
||||||
index 767859c..ec92882 100644
|
--- gc-7.2/include/private/gcconfig.h.aarch64 2013-11-10 02:51:30.000000000 -0600
|
||||||
--- a/include/private/gcconfig.h
|
+++ gc-7.2/include/private/gcconfig.h 2013-11-15 07:19:06.279025167 -0600
|
||||||
+++ b/include/private/gcconfig.h
|
|
||||||
@@ -70,6 +70,13 @@
|
@@ -70,6 +70,13 @@
|
||||||
# define I386
|
# define I386
|
||||||
# define mach_type_known
|
# define mach_type_known
|
||||||
@ -15,8 +14,8 @@ index 767859c..ec92882 100644
|
|||||||
+# endif
|
+# endif
|
||||||
# if defined(__arm) || defined(__arm__) || defined(__thumb__)
|
# if defined(__arm) || defined(__arm__) || defined(__thumb__)
|
||||||
# define ARM32
|
# define ARM32
|
||||||
# if !defined(LINUX) && !defined(NETBSD) && !defined(OPENBSD) \
|
# if !defined(LINUX) && !defined(NETBSD) && !defined(FREEBSD) \
|
||||||
@@ -250,6 +257,10 @@
|
@@ -251,6 +258,10 @@
|
||||||
# define IA64
|
# define IA64
|
||||||
# define mach_type_known
|
# define mach_type_known
|
||||||
# endif
|
# endif
|
||||||
@ -27,7 +26,7 @@ index 767859c..ec92882 100644
|
|||||||
# if defined(LINUX) && (defined(__arm) || defined(__arm__))
|
# if defined(LINUX) && (defined(__arm) || defined(__arm__))
|
||||||
# define ARM32
|
# define ARM32
|
||||||
# define mach_type_known
|
# define mach_type_known
|
||||||
@@ -537,6 +548,7 @@
|
@@ -546,6 +557,7 @@
|
||||||
/* running Amdahl UTS4 */
|
/* running Amdahl UTS4 */
|
||||||
/* S390 ==> 390-like machine */
|
/* S390 ==> 390-like machine */
|
||||||
/* running LINUX */
|
/* running LINUX */
|
||||||
@ -35,7 +34,7 @@ index 767859c..ec92882 100644
|
|||||||
/* ARM32 ==> Intel StrongARM */
|
/* ARM32 ==> Intel StrongARM */
|
||||||
/* IA64 ==> Intel IPF */
|
/* IA64 ==> Intel IPF */
|
||||||
/* (e.g. Itanium) */
|
/* (e.g. Itanium) */
|
||||||
@@ -1899,6 +1911,31 @@
|
@@ -1908,6 +1920,31 @@
|
||||||
# endif
|
# endif
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
@ -67,11 +66,10 @@ index 767859c..ec92882 100644
|
|||||||
# ifdef ARM32
|
# ifdef ARM32
|
||||||
# define CPP_WORDSZ 32
|
# define CPP_WORDSZ 32
|
||||||
# define MACH_TYPE "ARM32"
|
# define MACH_TYPE "ARM32"
|
||||||
diff --git a/libatomic_ops/src/atomic_ops.h b/libatomic_ops/src/atomic_ops.h
|
diff -up gc-7.2/libatomic_ops/src/atomic_ops.h.aarch64 gc-7.2/libatomic_ops/src/atomic_ops.h
|
||||||
index db177d5..d91da53 100644
|
--- gc-7.2/libatomic_ops/src/atomic_ops.h.aarch64 2013-11-10 02:02:41.000000000 -0600
|
||||||
--- a/libatomic_ops/src/atomic_ops.h
|
+++ gc-7.2/libatomic_ops/src/atomic_ops.h 2013-11-15 07:16:14.345140211 -0600
|
||||||
+++ b/libatomic_ops/src/atomic_ops.h
|
@@ -251,6 +251,10 @@
|
||||||
@@ -244,6 +244,10 @@
|
|
||||||
|| defined(__powerpc64__) || defined(__ppc64__)
|
|| defined(__powerpc64__) || defined(__ppc64__)
|
||||||
# include "atomic_ops/sysdeps/gcc/powerpc.h"
|
# include "atomic_ops/sysdeps/gcc/powerpc.h"
|
||||||
# endif /* __powerpc__ */
|
# endif /* __powerpc__ */
|
||||||
@ -82,11 +80,10 @@ index db177d5..d91da53 100644
|
|||||||
# if defined(__arm__) && !defined(AO_USE_PTHREAD_DEFS)
|
# if defined(__arm__) && !defined(AO_USE_PTHREAD_DEFS)
|
||||||
# include "atomic_ops/sysdeps/gcc/arm.h"
|
# include "atomic_ops/sysdeps/gcc/arm.h"
|
||||||
# define AO_CAN_EMUL_CAS
|
# define AO_CAN_EMUL_CAS
|
||||||
diff --git a/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am b/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am
|
diff -up gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am.aarch64 gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am
|
||||||
index d8b24dc..b73a20c 100644
|
--- gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am.aarch64 2013-11-10 02:02:43.000000000 -0600
|
||||||
--- a/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am
|
+++ gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am 2013-11-15 07:16:14.345140211 -0600
|
||||||
+++ b/libatomic_ops/src/atomic_ops/sysdeps/Makefile.am
|
@@ -30,6 +30,7 @@ nobase_sysdep_HEADERS= generic_pthread.h
|
||||||
@@ -30,6 +30,7 @@ nobase_sysdep_HEADERS= generic_pthread.h \
|
|
||||||
gcc/hexagon.h gcc/hppa.h gcc/ia64.h gcc/m68k.h \
|
gcc/hexagon.h gcc/hppa.h gcc/ia64.h gcc/m68k.h \
|
||||||
gcc/mips.h gcc/powerpc.h gcc/s390.h \
|
gcc/mips.h gcc/powerpc.h gcc/s390.h \
|
||||||
gcc/sh.h gcc/sparc.h gcc/x86.h gcc/x86_64.h \
|
gcc/sh.h gcc/sparc.h gcc/x86.h gcc/x86_64.h \
|
||||||
@ -94,11 +91,9 @@ index d8b24dc..b73a20c 100644
|
|||||||
\
|
\
|
||||||
hpc/hppa.h hpc/ia64.h \
|
hpc/hppa.h hpc/ia64.h \
|
||||||
\
|
\
|
||||||
diff --git a/libatomic_ops/src/atomic_ops/sysdeps/gcc/aarch64.h b/libatomic_ops/src/atomic_ops/sysdeps/gcc/aarch64.h
|
diff -up gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/gcc/aarch64.h.aarch64 gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/gcc/aarch64.h
|
||||||
new file mode 100644
|
--- gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/gcc/aarch64.h.aarch64 2013-11-15 07:16:14.345140211 -0600
|
||||||
index 0000000..94f1f14
|
+++ gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/gcc/aarch64.h 2013-11-15 07:16:14.345140211 -0600
|
||||||
--- /dev/null
|
|
||||||
+++ b/libatomic_ops/src/atomic_ops/sysdeps/gcc/aarch64.h
|
|
||||||
@@ -0,0 +1,353 @@
|
@@ -0,0 +1,353 @@
|
||||||
+/*
|
+/*
|
||||||
+ * Copyright (c) 1991-1994 by Xerox Corporation. All rights reserved.
|
+ * Copyright (c) 1991-1994 by Xerox Corporation. All rights reserved.
|
||||||
@ -453,11 +448,10 @@ index 0000000..94f1f14
|
|||||||
+
|
+
|
||||||
+
|
+
|
||||||
+#include "../../generalize.h"
|
+#include "../../generalize.h"
|
||||||
diff --git a/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h b/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h
|
diff -up gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h.aarch64 gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h
|
||||||
index 7089f05..de726fc 100644
|
--- gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h.aarch64 2013-11-10 02:02:47.000000000 -0600
|
||||||
--- a/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h
|
+++ gc-7.2/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h 2013-11-15 07:16:14.346140193 -0600
|
||||||
+++ b/libatomic_ops/src/atomic_ops/sysdeps/standard_ao_double_t.h
|
@@ -12,6 +12,8 @@
|
||||||
@@ -11,6 +11,8 @@
|
|
||||||
typedef __m128 double_ptr_storage;
|
typedef __m128 double_ptr_storage;
|
||||||
#elif defined(_WIN32) && !defined(__GNUC__)
|
#elif defined(_WIN32) && !defined(__GNUC__)
|
||||||
typedef unsigned __int64 double_ptr_storage;
|
typedef unsigned __int64 double_ptr_storage;
|
12
gc.spec
12
gc.spec
@ -1,15 +1,14 @@
|
|||||||
Summary: A garbage collector for C and C++
|
Summary: A garbage collector for C and C++
|
||||||
Name: gc
|
Name: gc
|
||||||
%global base_ver 7.2
|
%global base_ver 7.2
|
||||||
Version: 7.2d
|
Version: 7.2e
|
||||||
Release: 4%{?dist}
|
Release: 1%{?dist}
|
||||||
|
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
License: BSD
|
License: BSD
|
||||||
Url: http://www.hpl.hp.com/personal/Hans_Boehm/gc/
|
Url: http://www.hpl.hp.com/personal/Hans_Boehm/gc/
|
||||||
Source0: http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-%{version}%{?pre}.tar.gz
|
Source0: http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc-%{version}%{?pre}.tar.gz
|
||||||
Patch1: gc-7.2c-test-stack-infinite-loop.patch
|
Patch2: gc-7.2e-aarch64.patch
|
||||||
Patch2: gc-7.2d-aarch64.patch
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||||
|
|
||||||
## upstreamable patches
|
## upstreamable patches
|
||||||
@ -53,7 +52,6 @@ that involves minimum overhead across a variety of architectures.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n gc-%{base_ver}%{?pre}
|
%setup -q -n gc-%{base_ver}%{?pre}
|
||||||
%patch1 -p1 -b .infinite-loop-in-tests
|
|
||||||
%patch2 -p1 -b .aarch64
|
%patch2 -p1 -b .aarch64
|
||||||
|
|
||||||
# refresh auto*/libtool to purge rpaths
|
# refresh auto*/libtool to purge rpaths
|
||||||
@ -67,7 +65,6 @@ autoreconf -i -f
|
|||||||
CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN"; export CPPFLAGS
|
CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN"; export CPPFLAGS
|
||||||
|
|
||||||
%configure \
|
%configure \
|
||||||
--disable-dependency-tracking \
|
|
||||||
--disable-static \
|
--disable-static \
|
||||||
--enable-cplusplus \
|
--enable-cplusplus \
|
||||||
--enable-large-config \
|
--enable-large-config \
|
||||||
@ -148,6 +145,9 @@ rm -rf %{buildroot}
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Nov 15 2013 Rex Dieter <rdieter@fedoraproject.org> 7.2e-1
|
||||||
|
- gc-7.2e (#892559)
|
||||||
|
|
||||||
* Wed Oct 30 2013 Pavel Raiskup <praiskup@redhat.com> - 7.2d-4
|
* Wed Oct 30 2013 Pavel Raiskup <praiskup@redhat.com> - 7.2d-4
|
||||||
- add support for aarch64 (#969817)
|
- add support for aarch64 (#969817)
|
||||||
- ignore testsuite results only for powerpc
|
- ignore testsuite results only for powerpc
|
||||||
|
Loading…
Reference in New Issue
Block a user