Add an unwind_to field to basic blocks, making them Users instead of Values.
[oota-llvm.git] / include / llvm / Support / Compiler.h
index 046033fb9e424a4dc72b60a1eb4d5a61056a7f0b..1497dd61edee9a3e0d1b9fb88fcf451a402925b0 100644 (file)
@@ -2,8 +2,8 @@
 //
 //                     The LLVM Compiler Infrastructure
 //
-// This file was developed by Chris Lattner and is distributed under
-// the University of Illinois Open Source License. See LICENSE.TXT for details.
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
 //
 //===----------------------------------------------------------------------===//
 //
@@ -17,7 +17,7 @@
 
 // The VISIBILITY_HIDDEN macro, used for marking classes with the GCC-specific
 // visibility("hidden") attribute.
-#if __GNUC__ >= 4
+#if (__GNUC__ >= 4) && !defined(__MINGW32__)
 #define VISIBILITY_HIDDEN __attribute__ ((visibility("hidden")))
 #else
 #define VISIBILITY_HIDDEN
 #define TEMPLATE_INSTANTIATION(X)
 #endif
 
+// DISABLE_INLINE - On compilers where we have a directive to do so, mark a
+// method "not for inlining".
+#if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
+#define DISABLE_INLINE __attribute__((noinline))
+#else
+#define DISABLE_INLINE
+#endif
+
 #endif