insns.dat: use the officially documented UD0 and UD1 forms
[nasm.git] / config / msvc.h
blob464d06e1747c9f88669fc0a212508ca58204bcf3
1 /* ----------------------------------------------------------------------- *
3 * Copyright 2016 The NASM Authors - All Rights Reserved
4 * See the file AUTHORS included with the NASM distribution for
5 * the specific copyright holders.
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following
9 * conditions are met:
11 * * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * * Redistributions in binary form must reproduce the above
14 * copyright notice, this list of conditions and the following
15 * disclaimer in the documentation and/or other materials provided
16 * with the distribution.
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
19 * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
20 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
21 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
23 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
26 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 * ----------------------------------------------------------------------- */
35 * config/msvc.h
37 * Compiler definitions for Microsoft Visual C++;
38 * instead of config.h.in. See config.h.in for the
39 * variables which can be defined here.
41 * MSDN seems to have information back to Visual Studio 2003, so aim
42 * for compatibility that far back.
44 * Relevant _MSC_VER values:
45 * 1310 - Visual Studio 2003
46 * 1400 - Visual Studio 2005
47 * 1500 - Visual Studio 2008
48 * 1600 - Visual Studio 2010
49 * 1700 - Visual Studio 2012
50 * 1800 - Visual Studio 2013
51 * 1900 - Visual Studio 2015
54 #ifndef NASM_CONFIG_MSVC_H
55 #define NASM_CONFIG_MSVC_H
57 /* Define to 1 if you have the <fcntl.h> header file. */
58 #define HAVE_FCNTL_H 1
60 /* Define to 1 if you have the <inttypes.h> header file. */
61 #if _MSC_VER >= 1800
62 # define HAVE_INTTYPES_H 1
63 #endif
65 /* Define to 1 if you have the <io.h> header file. */
66 #define HAVE_IO_H 1
68 /* Define to 1 if you have the <stdlib.h> header file. */
69 #define HAVE_STDLIB_H 1
71 /* Define to 1 if you have the <string.h> header file. */
72 #define HAVE_STRING_H 1
74 /* Define to 1 if you have the <sys/stat.h> header file. */
75 #define HAVE_SYS_STAT_H 1
77 /* Define to 1 if you have the <sys/types.h> header file. */
78 #define HAVE_SYS_TYPES_H 1
80 /* Define to 1 if you have the `access' function. */
81 #define HAVE_ACCESS 1
82 #if _MSC_VER < 1400
83 # define access _access
84 #endif
86 /* Define to 1 if you have the `fileno' function. */
87 #define HAVE_FILENO 1
88 #if _MSC_VER < 1400
89 # define fileno _fileno
90 #endif
92 /* Define to 1 if you have the `snprintf' function. */
93 #define HAVE_SNPRINTF 1
94 #if _MSC_VER < 1900
95 # define snprintf _snprinf
96 #endif
98 /* Define to 1 if you have the `_chsize' function. */
99 #define HAVE__CHSIZE 1
101 /* Define to 1 if you have the `_chsize_s' function. */
102 #if _MSC_VER >= 1400
103 # define HAVE__CHSIZE_S 1
104 #endif
106 /* Define to 1 if you have the `_filelengthi64' function. */
107 #define HAVE__FILELENGTHI64 1
109 /* Define to 1 if you have the `_fseeki64' function. */
110 #define HAVE__FSEEKI64 1
112 /* Define to 1 if you have the `_fullpath' function. */
113 #define HAVE__FULLPATH 1
115 /* Define to 1 if you have the `stat' function. */
116 #define HAVE_STAT 1
117 #define stat _stati64
119 /* Define to 1 if stdbool.h conforms to C99. */
120 #if _MSC_VER >= 1800
121 # define HAVE_STDBOOL_H 1
122 #endif
124 /* Define to 1 if you have the `stricmp' function. */
125 #define HAVE_STRICMP 1
126 /* Define to 1 if you have the declaration of `stricmp', and to 0 if you
127 don't. */
128 #define HAVE_DECL_STRICMP 1
129 #if _MSC_VER < 1400
130 # define stricmp _stricmp
131 #endif
133 /* Define to 1 if you have the `strnicmp' function. */
134 #define HAVE_STRNICMP 1
135 /* Define to 1 if you have the declaration of `strnicmp', and to 0 if you
136 don't. */
137 #define HAVE_DECL_STRNICMP 1
138 #if _MSC_VER < 1400
139 # define strnicmp _strnicmp
140 #endif
142 #if _MSC_VER >= 1400
143 /* Define to 1 if you have the `strnlen' function. */
144 # define HAVE_STRNLEN 1
145 /* Define to 1 if you have the declaration of `strnlen', and to 0 if you
146 don't. */
147 # define HAVE_DECL_STRNLEN 1
148 #endif
150 /* Define to 1 if the system has the type `uintptr_t'. */
151 #if _MSC_VER >= 1900
152 # define HAVE_UINTPTR_T 1
153 #else
154 /* Define to the type of an unsigned integer type wide enough to hold a
155 pointer, if such a type exists, and if the system does not define it. */
156 # define uintptr_t size_t
157 #endif
159 /* Define to 1 if you have the `vsnprintf' function. */
160 #define HAVE_VSNPRINTF 1
161 #if _MSC_VER < 1400
162 # define vsnprint _vsnprintf
163 #endif
165 /* Define to 1 if the system has the type `_Bool'. */
166 #if _MSC_VER >= 1900
167 # define HAVE__BOOL 1
168 #endif
170 /* Define to 1 if you have the ANSI C header files. */
171 #define STDC_HEADERS 1
173 /* Define to 1 if your processor stores words with the least significant byte
174 first (like Intel and VAX, unlike Motorola and SPARC). */
175 #define WORDS_LITTLEENDIAN 1
177 /* Define to `__inline__' or `__inline' if that's what the C compiler
178 calls it, or to nothing if 'inline' is not supported under any name. */
179 #define inline __inline
181 /* Define to the equivalent of the C99 'restrict' keyword, or to
182 nothing if this is not supported. Do not define if restrict is
183 supported directly. */
184 #define restrict __restrict
186 #endif /* NASM_CONFIG_MSVC_H */