summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-06-04 19:25:50 +0000
committerChris Lattner <sabre@nondot.org>2004-06-04 19:25:50 +0000
commit3df4beffa5966ac89dfbdec69fbb498778d7a372 (patch)
treeed5fdcb0bc989bda0f86a7d4d7554a8436039cf8 /llvm/include
parent72e76982f73af2c72d1ee4e90468dc958c7b9b33 (diff)
downloadbcm5719-llvm-3df4beffa5966ac89dfbdec69fbb498778d7a372.tar.gz
bcm5719-llvm-3df4beffa5966ac89dfbdec69fbb498778d7a372.zip
Make this work on VC++, pull the HAVE_ALLOCA_H case out instead of duplicating
it. This code can probably be dramatically simplified, as I suspect that the pragma and other stuff is not needed with C++ compilers. llvm-svn: 14015
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/Config/alloca.h28
1 files changed, 12 insertions, 16 deletions
diff --git a/llvm/include/Config/alloca.h b/llvm/include/Config/alloca.h
index a6d6dbf9bdf..297b56fa7c5 100644
--- a/llvm/include/Config/alloca.h
+++ b/llvm/include/Config/alloca.h
@@ -23,27 +23,23 @@
* 2) If alloca.h cannot be found, then try stdlib.h. Some platforms
* (notably FreeBSD) defined alloca() there.
*/
-#ifndef __GNUC__
-# ifdef HAVE_ALLOCA_H
-# include <alloca.h>
+#ifdef _MSC_VER
+/* noop on Visual C++ */
+#elif defined(HAVE_ALLOCA_H)
+#include <alloca.h>
+#elif !defined(__GNUC__)
+# ifdef _AIX
+ # pragma alloca
# else
-# ifdef _AIX
- # pragma alloca
-# else
-# ifndef alloca
- char * alloca ();
-# endif
+# ifndef alloca
+ char * alloca ();
# endif
# endif
#else
-# ifdef HAVE_ALLOCA_H
-# include <alloca.h>
+# ifdef HAVE_STDLIB_H
+# include <stdlib.h>
# else
-# ifdef HAVE_STDLIB_H
-# include <stdlib.h>
-# else
-# error "The function alloca() is required but not found!"
-# endif
+# error "The function alloca() is required but not found!"
# endif
#endif
OpenPOWER on IntegriCloud