mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-04 01:42:09 +00:00
44eaf9b354
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
48 lines
1.2 KiB
C
48 lines
1.2 KiB
C
/*
|
|
* The LLVM Compiler Infrastructure
|
|
*
|
|
* This file was developed by the LLVM research group and is distributed under
|
|
* the University of Illinois Open Source License. See LICENSE.TXT for details.
|
|
*
|
|
******************************************************************************
|
|
*
|
|
* Description:
|
|
* This header file includes the infamous alloc.h header file if the
|
|
* autoconf system has found it. It hides all of the autoconf details
|
|
* from the rest of the application source code.
|
|
*/
|
|
|
|
#ifndef _CONFIG_ALLOC_H
|
|
#define _CONFIG_ALLOC_H
|
|
|
|
#include "Config/config.h"
|
|
|
|
/*
|
|
* This is a modified version of that suggested by the Autoconf manual.
|
|
* 1) The #pragma is indented so that pre-ANSI C compilers ignore it.
|
|
* 2) If alloca.h cannot be found, then try stdlib.h. Some platforms
|
|
* (notably FreeBSD) defined alloca() there.
|
|
*/
|
|
#ifdef _MSC_VER
|
|
/* noop on Visual C++ */
|
|
#elif defined(HAVE_ALLOCA_H)
|
|
#include <alloca.h>
|
|
#elif !defined(__GNUC__)
|
|
# ifdef _AIX
|
|
# pragma alloca
|
|
# else
|
|
# ifndef alloca
|
|
char * alloca ();
|
|
# endif
|
|
# endif
|
|
#else
|
|
# ifdef HAVE_STDLIB_H
|
|
# include <stdlib.h>
|
|
# else
|
|
# error "The function alloca() is required but not found!"
|
|
# endif
|
|
#endif
|
|
|
|
#endif
|
|
|