[lttng-dev] [PATCH urcu 2/4] Blacklist GCC 4.4.0, 4.4.1 and 4.4.2 on ARM
Michael Jeanson
mjeanson at efficios.com
Tue Dec 15 11:28:48 EST 2020
GCC added __sync_synchronize() in 4.4.0 but it was broken on ARM until
4.4.3, see the GCC bug report for more details :
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42263
Signed-off-by: Michael Jeanson <mjeanson at efficios.com>
Change-Id: I629e3c8b4baaccb34b2311e220f30d0ad8b69a19
---
include/urcu/arch/arm.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/include/urcu/arch/arm.h b/include/urcu/arch/arm.h
index 5d1c608..e904b06 100644
--- a/include/urcu/arch/arm.h
+++ b/include/urcu/arch/arm.h
@@ -70,6 +70,15 @@ extern "C" {
# endif
#endif
+/*
+ * https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42263
+ */
+#ifdef URCU_GCC_VERSION
+# if URCU_GCC_VERSION >= 40400 && URCU_GCC_VERSION <= 40402
+# error Your gcc version has a non-functional __sync_synchronize()
+# endif
+#endif
+
#ifdef __cplusplus
}
#endif
--
2.29.2
More information about the lttng-dev
mailing list