From 976464c210816ff0c90e2e24e766dda81193fc79 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Sun, 21 Sep 2014 18:14:01 -0700 Subject: mesa: Replace a priori knowledge of gcc attributes with configure tests. Note that I had to add support for testing the packed attribute to m4/ax_gcc_func_attribute.m4. Reviewed-by: Jason Ekstrand [C bits] Reviewed-by: Ian Romanick --- src/util/macros.h | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/util/macros.h') diff --git a/src/util/macros.h b/src/util/macros.h index 2e2f90f587c..a9867b41354 100644 --- a/src/util/macros.h +++ b/src/util/macros.h @@ -75,24 +75,27 @@ do { \ #define unreachable(str) #endif +#ifdef HAVE_FUNC_ATTRIBUTE_FLATTEN +#define FLATTEN __attribute__((__flatten__)) +#else +#define FLATTEN +#endif -#if (__GNUC__ >= 3) +#ifdef HAVE_FUNC_ATTRIBUTE_FORMAT #define PRINTFLIKE(f, a) __attribute__ ((format(__printf__, f, a))) #else #define PRINTFLIKE(f, a) #endif - /* Used to optionally mark structures with misaligned elements or size as * packed, to trade off performance for space. */ -#if (__GNUC__ >= 3) +#ifdef HAVE_FUNC_ATTRIBUTE_PACKED #define PACKED __attribute__((__packed__)) #else #define PACKED #endif - #ifdef __cplusplus /** * Macro function that evaluates to true if T is a trivially -- cgit v1.2.3