aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Feng Xiao <xiaofeng@google.com>2016-11-03 16:59:25 -0700
committerGravatar GitHub <noreply@github.com>2016-11-03 16:59:25 -0700
commit7bd11fcb59872b4448b13a1bdfc173428fdfb8f6 (patch)
tree6f21872257a50aecd3dfd2804195bddc889f8883
parent4c310d78a2754b6659d98a6b3111f52e361f30ae (diff)
parent4587a3fd074861412201755926bb8da5e6752f0d (diff)
Merge pull request #2301 from jbrianceau/arm-atomic-kuser-helpers-fix-v2
[arm/gcc] Don't rely on KUSER_HELPERS feature for atomics
-rw-r--r--src/google/protobuf/stubs/atomicops.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/google/protobuf/stubs/atomicops.h b/src/google/protobuf/stubs/atomicops.h
index 9b3d1e6b..6a539153 100644
--- a/src/google/protobuf/stubs/atomicops.h
+++ b/src/google/protobuf/stubs/atomicops.h
@@ -203,7 +203,11 @@ Atomic64 Release_Load(volatile const Atomic64* ptr);
#if defined(GOOGLE_PROTOBUF_ARCH_IA32) || defined(GOOGLE_PROTOBUF_ARCH_X64)
#include <google/protobuf/stubs/atomicops_internals_x86_gcc.h>
#elif defined(GOOGLE_PROTOBUF_ARCH_ARM) && defined(__linux__)
+#if (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4))
+#include <google/protobuf/stubs/atomicops_internals_generic_gcc.h>
+#else
#include <google/protobuf/stubs/atomicops_internals_arm_gcc.h>
+#endif
#elif defined(GOOGLE_PROTOBUF_ARCH_AARCH64)
#include <google/protobuf/stubs/atomicops_internals_arm64_gcc.h>
#elif defined(GOOGLE_PROTOBUF_ARCH_ARM_QNX)