From 44eaf9b354bc7bda04836aa3aede93ffca136bda Mon Sep 17 00:00:00 2001
From: Chris Lattner <sabre@nondot.org>
Date: Fri, 4 Jun 2004 19:25:50 +0000
Subject: [PATCH] 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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14015 91177308-0d34-0410-b5e6-96231b3b80d8
---
 include/Config/alloca.h      | 28 ++++++++++++----------------
 include/llvm/Config/alloca.h | 28 ++++++++++++----------------
 2 files changed, 24 insertions(+), 32 deletions(-)

diff --git a/include/Config/alloca.h b/include/Config/alloca.h
index a6d6dbf9bdf..297b56fa7c5 100644
--- a/include/Config/alloca.h
+++ b/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
 
diff --git a/include/llvm/Config/alloca.h b/include/llvm/Config/alloca.h
index a6d6dbf9bdf..297b56fa7c5 100644
--- a/include/llvm/Config/alloca.h
+++ b/include/llvm/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