All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH v4] compiler.h: remove GCC < 3 __builtin_expect fallback
@ 2020-12-11 13:13 Philippe Mathieu-Daudé
  2020-12-11 13:28 ` Claudio Fontana
  2020-12-11 13:33 ` Peter Maydell
  0 siblings, 2 replies; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-12-11 13:13 UTC (permalink / raw)
  To: qemu-devel
  Cc: Marc-André Lureau, Philippe Mathieu-Daudé, Peter Maydell

Since commit efc6c07 ("configure: Add a test for the minimum compiler
version"), QEMU explicitely depends on GCC >= 4.8.

(clang >= 3.4 advertizes itself as GCC >= 4.2 compatible and supports
__builtin_expect too)

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
[PMD: #error if likely/unlikely already defined]
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
Supersedes: <20201210134752.780923-4-marcandre.lureau@redhat.com>
---
 include/qemu/compiler.h | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/include/qemu/compiler.h b/include/qemu/compiler.h
index c76281f3540..ae1aee79c8d 100644
--- a/include/qemu/compiler.h
+++ b/include/qemu/compiler.h
@@ -43,14 +43,11 @@
 #define tostring(s)	#s
 #endif
 
-#ifndef likely
-#if __GNUC__ < 3
-#define __builtin_expect(x, n) (x)
+#if defined(likely) || defined(unlikely)
+#error building with likely/unlikely is not supported
 #endif
-
 #define likely(x)   __builtin_expect(!!(x), 1)
 #define unlikely(x)   __builtin_expect(!!(x), 0)
-#endif
 
 #ifndef container_of
 #define container_of(ptr, type, member) ({                      \
-- 
2.26.2



^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-12-12 19:12 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-11 13:13 [RFC PATCH v4] compiler.h: remove GCC < 3 __builtin_expect fallback Philippe Mathieu-Daudé
2020-12-11 13:28 ` Claudio Fontana
2020-12-11 13:35   ` Philippe Mathieu-Daudé
2020-12-11 13:33 ` Peter Maydell
2020-12-11 13:40   ` Philippe Mathieu-Daudé
2020-12-12 13:51     ` Marc-André Lureau

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.