define __pure and __const
authorHolger Lubitz <hal@duncan.ol.sub.de>
Wed, 1 Aug 2007 22:27:54 +0000 (00:27 +0200)
committerHolger Lubitz <hal@duncan.ol.sub.de>
Sun, 19 Aug 2007 20:50:48 +0000 (22:50 +0200)
src/include/compiler.h

index 2151fc6..8d76ac4 100644 (file)
@@ -279,6 +279,18 @@ extern void dbg_hex_dump_da ( unsigned long dispaddr,
 /** Apply standard C calling conventions */
 #define __cdecl __attribute__ (( cdecl , regparm(0) ))
 
+/**
+ * Declare a function as pure - i.e. without side effects
+ */
+#define __pure __attribute__ (( pure ))
+
+/**
+ * Declare a function as const - i.e. it does not access global memory
+ * (including dereferencing pointers passed to it) at all.
+ * Must also not call any non-const functions.
+ */
+#define __const __attribute__ (( const ))
+
 /**
  * Declare a function as used.
  *