diff options
Diffstat (limited to 'devel/apr/patches')
-rw-r--r-- | devel/apr/patches/patch-atomic_unix_ia32.c | 14 | ||||
-rw-r--r-- | devel/apr/patches/patch-test_testatomic.c | 20 |
2 files changed, 34 insertions, 0 deletions
diff --git a/devel/apr/patches/patch-atomic_unix_ia32.c b/devel/apr/patches/patch-atomic_unix_ia32.c new file mode 100644 index 00000000000..e19af42b4a3 --- /dev/null +++ b/devel/apr/patches/patch-atomic_unix_ia32.c @@ -0,0 +1,14 @@ +$NetBSD: patch-atomic_unix_ia32.c,v 1.1 2011/11/19 21:16:22 alnsn Exp $ +https://issues.apache.org/bugzilla/show_bug.cgi?id=51851 + +--- atomic/unix/ia32.c.orig 2007-08-26 19:50:26.000000000 +0000 ++++ atomic/unix/ia32.c +@@ -117,7 +117,7 @@ APR_DECLARE(void*) apr_atomic_xchgptr(vo + #elif APR_SIZEOF_VOIDP == 8 + asm volatile ("xchgq %q2, %1" + : "=a" (prev), "+m" (*mem) +- : "r" ((unsigned long)with)); ++ : "0" ((unsigned long)with)); + #else + #error APR_SIZEOF_VOIDP value not supported + #endif diff --git a/devel/apr/patches/patch-test_testatomic.c b/devel/apr/patches/patch-test_testatomic.c new file mode 100644 index 00000000000..32c9af2ba8e --- /dev/null +++ b/devel/apr/patches/patch-test_testatomic.c @@ -0,0 +1,20 @@ +$NetBSD: patch-test_testatomic.c,v 1.1 2011/11/19 21:16:22 alnsn Exp $ +https://issues.apache.org/bugzilla/show_bug.cgi?id=51851 + +--- test/testatomic.c.orig 2007-11-18 00:35:57.000000000 +0000 ++++ test/testatomic.c +@@ -84,11 +84,12 @@ static void test_xchg32(abts_case *tc, v + static void test_xchgptr(abts_case *tc, void *data) + { + int a; +- volatile void *target_ptr = NULL; ++ void *ref = "little piggy"; ++ volatile void *target_ptr = ref; + void *old_ptr; + + old_ptr = apr_atomic_xchgptr(&target_ptr, &a); +- ABTS_PTR_EQUAL(tc, NULL, old_ptr); ++ ABTS_PTR_EQUAL(tc, ref, old_ptr); + ABTS_PTR_EQUAL(tc, &a, (void *) target_ptr); + } + |