diff options
author | ivmai <ivmai> | 2011-03-18 22:39:38 +0000 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2011-07-25 16:03:26 +0400 |
commit | 34af2ded91bd02169909c332f11f08e379478c5c (patch) | |
tree | 4c6ac5b8276a7dd66cf31448675351c352f732ef /src | |
parent | 97b63ffb6ee2900ddcc76323393441e64abed5d0 (diff) | |
download | libatomic_ops-34af2ded91bd02169909c332f11f08e379478c5c.tar.gz |
2011-03-18 Ivan Maidanski <ivmai@mail.ru>
* src/atomic_ops/sysdeps/gcc/arm.h: Test for all known pre-v6 ARM
chips instead of all the currently existing v6+ ones.
Diffstat (limited to 'src')
-rw-r--r-- | src/atomic_ops/sysdeps/gcc/arm.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/atomic_ops/sysdeps/gcc/arm.h b/src/atomic_ops/sysdeps/gcc/arm.h index e44f431..094505a 100644 --- a/src/atomic_ops/sysdeps/gcc/arm.h +++ b/src/atomic_ops/sysdeps/gcc/arm.h @@ -31,12 +31,13 @@ * and do not need to access CP15 for ensuring a DMB */ -/* NEC LE-IT: gcc has no way to easily check the arm architecture - * but defines only one of __ARM_ARCH_x__ to be true */ -#if defined(__ARM_ARCH_6__) || defined(__ARM_ARCH_6J__) \ - || defined(__ARM_ARCH_6K__) || defined(__ARM_ARCH_6ZK__) \ - || defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) \ - || defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7R__) +/* NEC LE-IT: gcc has no way to easily check the arm architecture */ +/* but it defines only one of __ARM_ARCH_x__ to be true. */ +#if !defined(__ARM_ARCH_2__) && !defined(__ARM_ARCH_3__) \ + && !defined(__ARM_ARCH_3M__) && !defined(__ARM_ARCH_4__) \ + && !defined(__ARM_ARCH_4T__) && !defined(__ARM_ARCH_5__) \ + && !defined(__ARM_ARCH_5E__) && !defined(__ARM_ARCH_5T__) \ + && !defined(__ARM_ARCH_5TE__) && !defined(__ARM_ARCH_5TEJ__) #include "../standard_ao_double_t.h" @@ -44,8 +45,8 @@ AO_INLINE void AO_nop_full(void) { #ifndef AO_UNIPROCESSOR - /* issue an data memory barrier (keeps ordering of memory transactions */ - /* before and after this operation) */ + /* Issue a data memory barrier (keeps ordering of memory */ + /* transactions before and after this operation). */ unsigned int dest=0; __asm__ __volatile__("mcr p15,0,%0,c7,c10,5" : "=&r"(dest) : : "memory"); |