VirtualBox

root/trunk/include/iprt/alloca.h

Revision 11403, 1.8 kB (checked in by vboxsync, 3 months ago)

Solaris/vboxnetflt, iprt/alloca.h: correct instance tracking, made it impossible for the user to load the filter himself without vbox. Updated alloca.h to find r0 alloca for solaris too.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1 /** @file
2  * IPRT - alloca().
3  */
4
5 /*
6  * Copyright (C) 2006-2007 Sun Microsystems, Inc.
7  *
8  * This file is part of VirtualBox Open Source Edition (OSE), as
9  * available from http://www.virtualbox.org. This file is free software;
10  * you can redistribute it and/or modify it under the terms of the GNU
11  * General Public License (GPL) as published by the Free Software
12  * Foundation, in version 2 as it comes in the "COPYING" file of the
13  * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
14  * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
15  *
16  * The contents of this file may alternatively be used under the terms
17  * of the Common Development and Distribution License Version 1.0
18  * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
19  * VirtualBox OSE distribution, in which case the provisions of the
20  * CDDL are applicable instead of those of the GPL.
21  *
22  * You may elect to license modified versions of this file under the
23  * terms and conditions of either the GPL or the CDDL or both.
24  *
25  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
26  * Clara, CA 95054 USA or visit http://www.sun.com if you need
27  * additional information or have any questions.
28  */
29
30 #ifndef __iprt_alloca_h__
31 #define __iprt_alloca_h__
32
33 /*
34  * If there are more difficult platforms out there, we'll do OS
35  * specific #ifdefs. But for now we'll just include the headers
36  * which normally contains the alloca() prototype.
37  * When we're in kernel territory it starts getting a bit more
38  * interesting of course...
39  */
40 #if defined(IN_RING0) \
41  && (defined(RT_OS_DARWIN) || defined(RT_OS_LINUX) || defined(RT_OS_SOLARIS))
42 /* ASSUMES GNU C */
43 # define alloca(cb) __builtin_alloca(cb)
44 #else
45 # include <stdlib.h>
46 # if !defined(RT_OS_DARWIN) && !defined(RT_OS_FREEBSD)
47 include <malloc.h>
48 # endif
49 # ifdef RT_OS_SOLARIS
50 include <alloca.h>
51 # endif
52 #endif
53
54 #endif
55
Note: See TracBrowser for help on using the browser.

© 2008 Sun Microsystems, Inc.
ContactPrivacy policy