diff options
Diffstat (limited to 'dev-libs/libatomic_ops/files/libatomic_ops-1.2-sh4.patch')
-rw-r--r-- | dev-libs/libatomic_ops/files/libatomic_ops-1.2-sh4.patch | 59 |
1 files changed, 0 insertions, 59 deletions
diff --git a/dev-libs/libatomic_ops/files/libatomic_ops-1.2-sh4.patch b/dev-libs/libatomic_ops/files/libatomic_ops-1.2-sh4.patch deleted file mode 100644 index 4e8dd66a3554..000000000000 --- a/dev-libs/libatomic_ops/files/libatomic_ops-1.2-sh4.patch +++ /dev/null @@ -1,59 +0,0 @@ ---- libatomic_ops/src/atomic_ops.h -+++ libatomic_ops/src/atomic_ops.h -@@ -228,6 +228,10 @@ - # if defined(__cris__) || defined(CRIS) - # include "atomic_ops/sysdeps/gcc/cris.h" - # endif -+# if defined(__sh__) || defined(SH4) -+# include "atomic_ops/sysdeps/gcc/sh.h" -+# define AO_CAN_EMUL_CAS -+# endif /* __sh__ */ - #endif /* __GNUC__ && !AO_USE_PTHREAD_DEFS */ - - #if defined(__INTEL_COMPILER) && !defined(AO_USE_PTHREAD_DEFS) -only in patch2: -unchanged: ---- libatomic_ops/src/atomic_ops/sysdeps/Makefile.am -+++ libatomic_ops/src/atomic_ops/sysdeps/Makefile.am -@@ -29,6 +29,7 @@ - gcc/powerpc.h gcc/sparc.h \ - gcc/hppa.h gcc/m68k.h gcc/s390.h \ - gcc/ia64.h gcc/x86_64.h gcc/cris.h \ -+ gcc/sh.h \ - \ - icc/ia64.h \ - \ ---- libatomic_ops/src/atomic_ops/sysdeps/gcc/sh.h -+++ libatomic_ops/src/atomic_ops/sysdeps/gcc/sh.h -@@ -0,0 +1,31 @@ -+/* -+ * Copyright (c) 2009 by Takashi YOSHII. All rights reserved. -+ * -+ * THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED -+ * OR IMPLIED. ANY USE IS AT YOUR OWN RISK. -+ * -+ * Permission is hereby granted to use or copy this program -+ * for any purpose, provided the above notices are retained on all copies. -+ * Permission to modify the code and to distribute modified code is granted, -+ * provided the above notices are retained, and a notice that the code was -+ * modified is included with the above copyright notice. -+ */ -+ -+#include "../all_atomic_load_store.h" -+#include "../ordered.h" -+ -+/* sh has tas.b(byte) only */ -+#include "../test_and_set_t_is_char.h" -+ -+AO_INLINE AO_TS_VAL_t -+AO_test_and_set_full(volatile AO_TS_t *addr) -+{ -+ int oldval; -+ __asm__ __volatile__( -+ "tas.b @%1; movt %0" -+ : "=r" (oldval) -+ : "r" (addr) -+ : "t", "memory"); -+ return oldval? AO_TS_CLEAR : AO_TS_SET; -+} -+#define AO_HAVE_test_and_set_full |