summaryrefslogtreecommitdiff
path: root/include/linux/compiler-gcc3.h
diff options
context:
space:
mode:
authorAndrew Morton <akpm@osdl.org>2003-09-21 01:36:53 -0700
committerLinus Torvalds <torvalds@home.osdl.org>2003-09-21 01:36:53 -0700
commit5fc4d8394c3192ba18c19f82f629b71e7e68cc0d (patch)
treec1d3733b039872d9bf8a51192734fde20cab7dde /include/linux/compiler-gcc3.h
parent0bfc934bf21cfb6ec6ec06f4797e4627cd3ddd48 (diff)
[PATCH] ECC support
From: "Nakajima, Jun" <jun.nakajima@intel.com> Split the increasingly messy compiler.h file into per-compiler files and also add support for non-gcc compilers. With the current implementation: include/linux/compiler.h defines the compiler-dependent abstractions which can be overwritten by per-compiler definitions. include/linux/compiler-gcc.h contains the common definitions for all gcc versions. include/linux/compiler-gcc[2,3,+].h contains gcc major version specific definitions. include/linux/compiler-intel.h contains intel compiler specific definitions."
Diffstat (limited to 'include/linux/compiler-gcc3.h')
-rw-r--r--include/linux/compiler-gcc3.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/linux/compiler-gcc3.h b/include/linux/compiler-gcc3.h
new file mode 100644
index 000000000000..4eac3db89fda
--- /dev/null
+++ b/include/linux/compiler-gcc3.h
@@ -0,0 +1,22 @@
+/* Never include this file directly. Include <linux/compiler.h> instead. */
+
+/* These definitions are for GCC v3.x. */
+#include <linux/compiler-gcc.h>
+
+#if __GNUC_MINOR__ >= 1
+# define inline __inline__ __attribute__((always_inline))
+# define __inline__ __inline__ __attribute__((always_inline))
+# define __inline __inline__ __attribute__((always_inline))
+#endif
+
+#if __GNUC_MINOR__ > 0
+# define __deprecated __attribute__((deprecated))
+#endif
+
+#if __GNUC_MINOR__ >= 3
+# define __attribute_used__ __attribute__((__used__))
+#else
+# define __attribute_used__ __attribute__((__unused__))
+#endif
+
+#define __attribute_pure__ __attribute__((pure))