freebsd-ports/lang/parrot/files/patch-src_atomic_gcc__x86.c
Kurt Jaeger 596e0b1cc7 lang/parrot: 7.9.0 -> 8.1.0
2016-02-16    release 8.1.0
    - Core
        + Annotate needed -Wcast-align fixes (for early armv5 systems)
    - Documentation
        + Fixed typo in move_buffer_callback doc
        + Add missing hyperref package for latex
    - Tests
        + Restore make configure_tests, remove outdated t/steps/auto/labs-01.t

2015-12-15    release 7.11.0
    - Build
        + Improve darwin and cygwin build, seperate installable libparrot.
          GH #1212, 1096
        + Honor --disable-rpath on darwin, skip -install_name then
        + Update default cygwin compiler and linker to gcc with 1.7
        + Add darwin and windows smokers (travis + appveyor), prev. linux only
        + use a smaller default target: core (most parrot_utils, not all)
          make all builds now all, including docs and installables

2015-11-17    release 7.10.0
    - Documentation
        + Accept cperldoc as fallback to perldoc GH #1211
2016-04-03 11:20:55 +00:00

20 lines
894 B
C

--- src/atomic/gcc_x86.c.orig 2016-04-03 10:11:30 UTC
+++ src/atomic/gcc_x86.c
@@ -51,7 +51,7 @@ parrot_i386_cmpxchg(ARGMOD(void *volatil
ARGIN_NULLOK(void *update))
{
ASSERT_ARGS(parrot_i386_cmpxchg)
-#if defined(PARROT_HAS_AMD64_GCC_CMPXCHG) || __WORDSIZE == 64
+#if defined(PARROT_HAS_AMD64_GCC_CMPXCHG)
__asm__ __volatile__("lock\n"
"cmpxchgq %1,%2":"=a"(expect):"q"(update), "m"(*ptr),
"0"(expect)
@@ -85,7 +85,7 @@ parrot_i386_xadd(ARGIN(volatile long *l)
{
ASSERT_ARGS(parrot_i386_xadd)
long result = amount;
-#if defined(PARROT_HAS_AMD64_GCC_CMPXCHG) || __WORDSIZE == 64
+#if defined(PARROT_HAS_AMD64_GCC_CMPXCHG)
__asm__ __volatile__("lock\n" "xaddq %0, %1" : "=r"(result), "=m"(*l) :
"0"(result), "m"(*l));
#elif defined(PARROT_HAS_I386_GCC_CMPXCHG)