summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2016-10-07 01:14:08 +0300
committerIvan Maidanski <ivmai@mail.ru>2016-10-07 01:14:08 +0300
commit9b7cecba55f5864577a803f4558bd9b9f304ac33 (patch)
tree2372f17d900ef225de0cf3af28be99cb34f87f35
parent11f324ee661d7a7ba1933f74430fe1ae14648e40 (diff)
downloadlibatomic_ops-9b7cecba55f5864577a803f4558bd9b9f304ac33.tar.gz
Fix 'visibility' of some CPU-specific internal macros
Undefine internal macros that are defined and used solely in a single CPU-specific file. * src/atomic_ops/sysdeps/gcc/arm.h (AO_BR_ALIGN, AO_MASK_PTR, AO_THUMB_GO_ARM, AO_THUMB_RESTORE_MODE, AO_THUMB_SWITCH_CLOBBERS): Undefine at the end of file. * src/atomic_ops/sysdeps/gcc/hppa.h (AO_PA_LDCW_ALIGNMENT, AO_ldcw, AO_ldcw_align): Likewise. * src/atomic_ops/sysdeps/gcc/ia64.h (AO_IN_ADDR, AO_LEN, AO_MASK, AO_OUT_ADDR, AO_SWIZZLE): Likewise. * src/atomic_ops/sysdeps/gcc/mips.h (AO_MIPS_LL, AO_MIPS_LL_1, AO_MIPS_SC, AO_MIPS_SET_ISA): Likewise. * src/atomic_ops/sysdeps/hpc/hppa.h (AO_PA_LDCW_ALIGNMENT, AO_ldcw, AO_ldcw_align): Likewise. * src/atomic_ops/sysdeps/hpc/ia64.h (AO_T_FASIZE, AO_T_SIZE): Likewise. * src/atomic_ops/sysdeps/icc/ia64.h (AO_INTEL_PTR_t): Likewise. * src/atomic_ops/sysdeps/test_and_set_t_is_char.h (AO_TS_SET_TRUEVAL): Likewise.
-rw-r--r--src/atomic_ops/sysdeps/gcc/arm.h6
-rw-r--r--src/atomic_ops/sysdeps/gcc/hppa.h4
-rw-r--r--src/atomic_ops/sysdeps/gcc/ia64.h6
-rw-r--r--src/atomic_ops/sysdeps/gcc/mips.h5
-rw-r--r--src/atomic_ops/sysdeps/hpc/hppa.h4
-rw-r--r--src/atomic_ops/sysdeps/hpc/ia64.h3
-rw-r--r--src/atomic_ops/sysdeps/icc/ia64.h2
-rw-r--r--src/atomic_ops/sysdeps/test_and_set_t_is_char.h2
8 files changed, 32 insertions, 0 deletions
diff --git a/src/atomic_ops/sysdeps/gcc/arm.h b/src/atomic_ops/sysdeps/gcc/arm.h
index 84a96e1..f548aa1 100644
--- a/src/atomic_ops/sysdeps/gcc/arm.h
+++ b/src/atomic_ops/sysdeps/gcc/arm.h
@@ -719,3 +719,9 @@ AO_fetch_compare_and_swap(volatile AO_t *addr, AO_t old_val, AO_t new_val)
# include "generic.h"
#endif /* AO_GCC_ATOMIC_TEST_AND_SET */
+
+#undef AO_BR_ALIGN
+#undef AO_MASK_PTR
+#undef AO_THUMB_GO_ARM
+#undef AO_THUMB_RESTORE_MODE
+#undef AO_THUMB_SWITCH_CLOBBERS
diff --git a/src/atomic_ops/sysdeps/gcc/hppa.h b/src/atomic_ops/sysdeps/gcc/hppa.h
index d36f582..ae1c315 100644
--- a/src/atomic_ops/sysdeps/gcc/hppa.h
+++ b/src/atomic_ops/sysdeps/gcc/hppa.h
@@ -87,3 +87,7 @@ AO_pa_clear(volatile AO_TS_t * addr)
*a = 1;
}
#define AO_CLEAR(addr) AO_pa_clear(addr)
+
+#undef AO_PA_LDCW_ALIGNMENT
+#undef AO_ldcw
+#undef AO_ldcw_align
diff --git a/src/atomic_ops/sysdeps/gcc/ia64.h b/src/atomic_ops/sysdeps/gcc/ia64.h
index f5549fe..98627d5 100644
--- a/src/atomic_ops/sysdeps/gcc/ia64.h
+++ b/src/atomic_ops/sysdeps/gcc/ia64.h
@@ -279,3 +279,9 @@ AO_short_fetch_compare_and_swap_release(volatile unsigned short *addr,
/* TODO: Add compare_and_swap_double as soon as there is widely */
/* available hardware that implements it. */
+
+#undef AO_IN_ADDR
+#undef AO_LEN
+#undef AO_MASK
+#undef AO_OUT_ADDR
+#undef AO_SWIZZLE
diff --git a/src/atomic_ops/sysdeps/gcc/mips.h b/src/atomic_ops/sysdeps/gcc/mips.h
index 191ad26..f8f154f 100644
--- a/src/atomic_ops/sysdeps/gcc/mips.h
+++ b/src/atomic_ops/sysdeps/gcc/mips.h
@@ -190,3 +190,8 @@ AO_fetch_compare_and_swap(volatile AO_t *addr, AO_t old, AO_t new_val)
/* CAS primitives with acquire, release and full semantics are */
/* generated automatically (and AO_int_... primitives are */
/* defined properly after the first generalization pass). */
+
+#undef AO_MIPS_LL
+#undef AO_MIPS_LL_1
+#undef AO_MIPS_SC
+#undef AO_MIPS_SET_ISA
diff --git a/src/atomic_ops/sysdeps/hpc/hppa.h b/src/atomic_ops/sysdeps/hpc/hppa.h
index 4e27eb2..f2f1dcf 100644
--- a/src/atomic_ops/sysdeps/hpc/hppa.h
+++ b/src/atomic_ops/sysdeps/hpc/hppa.h
@@ -94,3 +94,7 @@ AO_pa_clear(volatile AO_TS_t * addr)
*a = 1;
}
#define AO_CLEAR(addr) AO_pa_clear(addr)
+
+#undef AO_PA_LDCW_ALIGNMENT
+#undef AO_ldcw
+#undef AO_ldcw_align
diff --git a/src/atomic_ops/sysdeps/hpc/ia64.h b/src/atomic_ops/sysdeps/hpc/ia64.h
index 6391eda..e71f5e8 100644
--- a/src/atomic_ops/sysdeps/hpc/ia64.h
+++ b/src/atomic_ops/sysdeps/hpc/ia64.h
@@ -153,3 +153,6 @@ AO_short_fetch_compare_and_swap_release(volatile unsigned short *addr,
#ifndef __LP64__
# define AO_T_IS_INT
#endif
+
+#undef AO_T_FASIZE
+#undef AO_T_SIZE
diff --git a/src/atomic_ops/sysdeps/icc/ia64.h b/src/atomic_ops/sysdeps/icc/ia64.h
index b43a501..6654209 100644
--- a/src/atomic_ops/sysdeps/icc/ia64.h
+++ b/src/atomic_ops/sysdeps/icc/ia64.h
@@ -203,3 +203,5 @@ AO_int_fetch_compare_and_swap_release(volatile unsigned int *addr,
return _InterlockedCompareExchange_rel(addr, new_val, old_val);
}
#define AO_HAVE_int_fetch_compare_and_swap_release
+
+#undef AO_INTEL_PTR_t
diff --git a/src/atomic_ops/sysdeps/test_and_set_t_is_char.h b/src/atomic_ops/sysdeps/test_and_set_t_is_char.h
index 1711ffd..75df9c0 100644
--- a/src/atomic_ops/sysdeps/test_and_set_t_is_char.h
+++ b/src/atomic_ops/sysdeps/test_and_set_t_is_char.h
@@ -45,3 +45,5 @@ typedef enum {
#define AO_TS_t unsigned char
#define AO_CHAR_TS_T 1
+
+#undef AO_TS_SET_TRUEVAL