]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/builtin-types.def
* machmode.h (int_n_data_t): New.
[thirdparty/gcc.git] / gcc / builtin-types.def
1 /* Copyright (C) 2001-2014 Free Software Foundation, Inc.
2
3 This file is part of GCC.
4
5 GCC is free software; you can redistribute it and/or modify it under
6 the terms of the GNU General Public License as published by the Free
7 Software Foundation; either version 3, or (at your option) any later
8 version.
9
10 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
11 WARRANTY; without even the implied warranty of MERCHANTABILITY or
12 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13 for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with GCC; see the file COPYING3. If not see
17 <http://www.gnu.org/licenses/>. */
18
19 /* This header provides a declarative way of describing the types that
20 are used when declaring builtin functions.
21
22 Before including this header, you must define the following macros:
23
24 DEF_PRIMITIVE_TYPE (ENUM, TYPE)
25
26 The ENUM is an identifier indicating which type is being defined.
27 TYPE is an expression for a `tree' that represents the type.
28
29 DEF_FUNCTION_TYPE_0 (ENUM, RETURN)
30 DEF_FUNCTION_TYPE_1 (ENUM, RETURN, ARG1)
31 DEF_FUNCTION_TYPE_2 (ENUM, RETURN, ARG1, ARG2)
32 [...]
33
34 These macros describe function types. ENUM is as above. The
35 RETURN type is one of the enumerals already defined. ARG1, ARG2,
36 etc, give the types of the arguments, similarly.
37
38 DEF_FUNCTION_TYPE_VAR_0 (ENUM, RETURN)
39 DEF_FUNCTION_TYPE_VAR_1 (ENUM, RETURN, ARG1)
40 DEF_FUNCTION_TYPE_VAR_2 (ENUM, RETURN, ARG1, ARG2)
41 [...]
42
43 Similar, but for function types that take variable arguments.
44 For example:
45
46 DEF_FUNCTION_TYPE_1 (BT_INT_DOUBLE, BT_INT, BT_DOUBLE)
47
48 describes the type `int ()(double)', using the enumeral
49 BT_INT_DOUBLE, whereas:
50
51 DEF_FUNCTION_TYPE_VAR_1 (BT_INT_DOUBLE_VAR, BT_INT, BT_DOUBLE)
52
53 describes the type `int ()(double, ...)'.
54
55 DEF_POINTER_TYPE (ENUM, TYPE)
56
57 This macro describes a pointer type. ENUM is as above; TYPE is
58 the type pointed to. */
59
60 DEF_PRIMITIVE_TYPE (BT_VOID, void_type_node)
61 DEF_PRIMITIVE_TYPE (BT_BOOL, boolean_type_node)
62 DEF_PRIMITIVE_TYPE (BT_INT, integer_type_node)
63 DEF_PRIMITIVE_TYPE (BT_UINT, unsigned_type_node)
64 DEF_PRIMITIVE_TYPE (BT_LONG, long_integer_type_node)
65 DEF_PRIMITIVE_TYPE (BT_ULONG, long_unsigned_type_node)
66 DEF_PRIMITIVE_TYPE (BT_LONGLONG, long_long_integer_type_node)
67 DEF_PRIMITIVE_TYPE (BT_ULONGLONG, long_long_unsigned_type_node)
68 DEF_PRIMITIVE_TYPE (BT_INTMAX, intmax_type_node)
69 DEF_PRIMITIVE_TYPE (BT_UINTMAX, uintmax_type_node)
70 DEF_PRIMITIVE_TYPE (BT_UINT16, uint16_type_node)
71 DEF_PRIMITIVE_TYPE (BT_UINT32, uint32_type_node)
72 DEF_PRIMITIVE_TYPE (BT_UINT64, uint64_type_node)
73 DEF_PRIMITIVE_TYPE (BT_WORD, (*lang_hooks.types.type_for_mode) (word_mode, 1))
74 DEF_PRIMITIVE_TYPE (BT_UNWINDWORD, (*lang_hooks.types.type_for_mode)
75 (targetm.unwind_word_mode (), 1))
76 DEF_PRIMITIVE_TYPE (BT_FLOAT, float_type_node)
77 DEF_PRIMITIVE_TYPE (BT_DOUBLE, double_type_node)
78 DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE, long_double_type_node)
79 DEF_PRIMITIVE_TYPE (BT_COMPLEX_FLOAT, complex_float_type_node)
80 DEF_PRIMITIVE_TYPE (BT_COMPLEX_DOUBLE, complex_double_type_node)
81 DEF_PRIMITIVE_TYPE (BT_COMPLEX_LONGDOUBLE, complex_long_double_type_node)
82
83 DEF_PRIMITIVE_TYPE (BT_PTR, ptr_type_node)
84 DEF_PRIMITIVE_TYPE (BT_FILEPTR, fileptr_type_node)
85 DEF_PRIMITIVE_TYPE (BT_CONST_PTR, const_ptr_type_node)
86 DEF_PRIMITIVE_TYPE (BT_VOLATILE_PTR,
87 build_pointer_type
88 (build_qualified_type (void_type_node,
89 TYPE_QUAL_VOLATILE)))
90 DEF_PRIMITIVE_TYPE (BT_CONST_VOLATILE_PTR,
91 build_pointer_type
92 (build_qualified_type (void_type_node,
93 TYPE_QUAL_VOLATILE|TYPE_QUAL_CONST)))
94 DEF_PRIMITIVE_TYPE (BT_PTRMODE, (*lang_hooks.types.type_for_mode)(ptr_mode, 0))
95 DEF_PRIMITIVE_TYPE (BT_INT_PTR, integer_ptr_type_node)
96 DEF_PRIMITIVE_TYPE (BT_FLOAT_PTR, float_ptr_type_node)
97 DEF_PRIMITIVE_TYPE (BT_DOUBLE_PTR, double_ptr_type_node)
98 DEF_PRIMITIVE_TYPE (BT_CONST_DOUBLE_PTR,
99 build_pointer_type
100 (build_qualified_type (double_type_node,
101 TYPE_QUAL_CONST)))
102 DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE_PTR, long_double_ptr_type_node)
103 DEF_PRIMITIVE_TYPE (BT_PID, pid_type_node)
104 DEF_PRIMITIVE_TYPE (BT_SIZE, size_type_node)
105 DEF_PRIMITIVE_TYPE (BT_SSIZE, signed_size_type_node)
106 DEF_PRIMITIVE_TYPE (BT_WINT, wint_type_node)
107 DEF_PRIMITIVE_TYPE (BT_STRING, string_type_node)
108 DEF_PRIMITIVE_TYPE (BT_CONST_STRING, const_string_type_node)
109
110 DEF_PRIMITIVE_TYPE (BT_DFLOAT32, dfloat32_type_node)
111 DEF_PRIMITIVE_TYPE (BT_DFLOAT64, dfloat64_type_node)
112 DEF_PRIMITIVE_TYPE (BT_DFLOAT128, dfloat128_type_node)
113 DEF_PRIMITIVE_TYPE (BT_DFLOAT32_PTR, dfloat32_ptr_type_node)
114 DEF_PRIMITIVE_TYPE (BT_DFLOAT64_PTR, dfloat64_ptr_type_node)
115 DEF_PRIMITIVE_TYPE (BT_DFLOAT128_PTR, dfloat128_ptr_type_node)
116
117 DEF_PRIMITIVE_TYPE (BT_VALIST_REF, va_list_ref_type_node)
118 DEF_PRIMITIVE_TYPE (BT_VALIST_ARG, va_list_arg_type_node)
119
120 DEF_PRIMITIVE_TYPE (BT_I1, builtin_type_for_size (BITS_PER_UNIT*1, 1))
121 DEF_PRIMITIVE_TYPE (BT_I2, builtin_type_for_size (BITS_PER_UNIT*2, 1))
122 DEF_PRIMITIVE_TYPE (BT_I4, builtin_type_for_size (BITS_PER_UNIT*4, 1))
123 DEF_PRIMITIVE_TYPE (BT_I8, builtin_type_for_size (BITS_PER_UNIT*8, 1))
124 DEF_PRIMITIVE_TYPE (BT_I16, builtin_type_for_size (BITS_PER_UNIT*16, 1))
125
126 DEF_POINTER_TYPE (BT_PTR_CONST_STRING, BT_CONST_STRING)
127 DEF_POINTER_TYPE (BT_PTR_LONG, BT_LONG)
128 DEF_POINTER_TYPE (BT_PTR_ULONGLONG, BT_ULONGLONG)
129 DEF_POINTER_TYPE (BT_PTR_PTR, BT_PTR)
130
131 DEF_FUNCTION_TYPE_0 (BT_FN_VOID, BT_VOID)
132 DEF_FUNCTION_TYPE_0 (BT_FN_BOOL, BT_BOOL)
133 DEF_FUNCTION_TYPE_0 (BT_FN_PTR, BT_PTR)
134 DEF_FUNCTION_TYPE_0 (BT_FN_CONST_STRING, BT_CONST_STRING)
135 DEF_FUNCTION_TYPE_0 (BT_FN_PID, BT_PID)
136 DEF_FUNCTION_TYPE_0 (BT_FN_INT, BT_INT)
137 DEF_FUNCTION_TYPE_0 (BT_FN_UINT, BT_UINT)
138 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT, BT_FLOAT)
139 DEF_FUNCTION_TYPE_0 (BT_FN_DOUBLE, BT_DOUBLE)
140 /* For "long double" we use LONGDOUBLE (not LONG_DOUBLE) to
141 distinguish it from two types in sequence, "long" followed by
142 "double". */
143 DEF_FUNCTION_TYPE_0 (BT_FN_LONGDOUBLE, BT_LONGDOUBLE)
144 DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT32, BT_DFLOAT32)
145 DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT64, BT_DFLOAT64)
146 DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT128, BT_DFLOAT128)
147
148 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONG, BT_LONG, BT_LONG)
149 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGLONG, BT_LONGLONG, BT_LONGLONG)
150 DEF_FUNCTION_TYPE_1 (BT_FN_INTMAX_INTMAX, BT_INTMAX, BT_INTMAX)
151 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_FLOAT, BT_FLOAT, BT_FLOAT)
152 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_DOUBLE, BT_DOUBLE, BT_DOUBLE)
153 DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_LONGDOUBLE,
154 BT_LONGDOUBLE, BT_LONGDOUBLE)
155 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT,
156 BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT)
157 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
158 BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE)
159 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
160 BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
161 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_COMPLEX_FLOAT,
162 BT_FLOAT, BT_COMPLEX_FLOAT)
163 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_COMPLEX_DOUBLE,
164 BT_DOUBLE, BT_COMPLEX_DOUBLE)
165 DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE,
166 BT_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
167 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_FLOAT_FLOAT,
168 BT_COMPLEX_FLOAT, BT_FLOAT)
169 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_DOUBLE_DOUBLE,
170 BT_COMPLEX_DOUBLE, BT_DOUBLE)
171 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_LONGDOUBLE,
172 BT_COMPLEX_LONGDOUBLE, BT_LONGDOUBLE)
173 DEF_FUNCTION_TYPE_1 (BT_FN_PTR_UINT, BT_PTR, BT_UINT)
174 DEF_FUNCTION_TYPE_1 (BT_FN_PTR_SIZE, BT_PTR, BT_SIZE)
175 DEF_FUNCTION_TYPE_1 (BT_FN_INT_INT, BT_INT, BT_INT)
176 DEF_FUNCTION_TYPE_1 (BT_FN_INT_UINT, BT_INT, BT_UINT)
177 DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONG, BT_INT, BT_LONG)
178 DEF_FUNCTION_TYPE_1 (BT_FN_INT_ULONG, BT_INT, BT_ULONG)
179 DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGLONG, BT_INT, BT_LONGLONG)
180 DEF_FUNCTION_TYPE_1 (BT_FN_INT_ULONGLONG, BT_INT, BT_ULONGLONG)
181 DEF_FUNCTION_TYPE_1 (BT_FN_INT_INTMAX, BT_INT, BT_INTMAX)
182 DEF_FUNCTION_TYPE_1 (BT_FN_INT_UINTMAX, BT_INT, BT_UINTMAX)
183 DEF_FUNCTION_TYPE_1 (BT_FN_INT_PTR, BT_INT, BT_PTR)
184 DEF_FUNCTION_TYPE_1 (BT_FN_INT_FLOAT, BT_INT, BT_FLOAT)
185 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DOUBLE, BT_INT, BT_DOUBLE)
186 DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE)
187 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT32, BT_INT, BT_DFLOAT32)
188 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT64, BT_INT, BT_DFLOAT64)
189 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT128, BT_INT, BT_DFLOAT128)
190 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_FLOAT, BT_LONG, BT_FLOAT)
191 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_DOUBLE, BT_LONG, BT_DOUBLE)
192 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONGDOUBLE, BT_LONG, BT_LONGDOUBLE)
193 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_FLOAT, BT_LONGLONG, BT_FLOAT)
194 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_DOUBLE, BT_LONGLONG, BT_DOUBLE)
195 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGDOUBLE, BT_LONGLONG, BT_LONGDOUBLE)
196 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTR, BT_VOID, BT_PTR)
197 DEF_FUNCTION_TYPE_1 (BT_FN_SIZE_CONST_STRING, BT_SIZE, BT_CONST_STRING)
198 DEF_FUNCTION_TYPE_1 (BT_FN_INT_CONST_STRING, BT_INT, BT_CONST_STRING)
199 DEF_FUNCTION_TYPE_1 (BT_FN_PTR_PTR, BT_PTR, BT_PTR)
200 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_VALIST_REF, BT_VOID, BT_VALIST_REF)
201 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_INT, BT_VOID, BT_INT)
202 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_CONST_STRING, BT_FLOAT, BT_CONST_STRING)
203 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_STRING, BT_DOUBLE, BT_CONST_STRING)
204 DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_CONST_STRING,
205 BT_LONGDOUBLE, BT_CONST_STRING)
206 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT32_CONST_STRING, BT_DFLOAT32, BT_CONST_STRING)
207 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT64_CONST_STRING, BT_DFLOAT64, BT_CONST_STRING)
208 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT128_CONST_STRING,
209 BT_DFLOAT128, BT_CONST_STRING)
210 DEF_FUNCTION_TYPE_1 (BT_FN_STRING_CONST_STRING, BT_STRING, BT_CONST_STRING)
211 DEF_FUNCTION_TYPE_1 (BT_FN_UNWINDWORD_PTR, BT_UNWINDWORD, BT_PTR)
212 DEF_FUNCTION_TYPE_1 (BT_FN_INT_WINT, BT_INT, BT_WINT)
213 DEF_FUNCTION_TYPE_1 (BT_FN_WINT_WINT, BT_WINT, BT_WINT)
214 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT32_DFLOAT32, BT_DFLOAT32, BT_DFLOAT32)
215 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT64_DFLOAT64, BT_DFLOAT64, BT_DFLOAT64)
216 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT128_DFLOAT128, BT_DFLOAT128, BT_DFLOAT128)
217 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_VPTR, BT_VOID, BT_VOLATILE_PTR)
218 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTRPTR, BT_VOID, BT_PTR_PTR)
219 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_CONST_PTR, BT_VOID, BT_CONST_PTR)
220 DEF_FUNCTION_TYPE_1 (BT_FN_UINT_UINT, BT_UINT, BT_UINT)
221 DEF_FUNCTION_TYPE_1 (BT_FN_ULONG_ULONG, BT_ULONG, BT_ULONG)
222 DEF_FUNCTION_TYPE_1 (BT_FN_ULONGLONG_ULONGLONG, BT_ULONGLONG, BT_ULONGLONG)
223 DEF_FUNCTION_TYPE_1 (BT_FN_UINT16_UINT16, BT_UINT16, BT_UINT16)
224 DEF_FUNCTION_TYPE_1 (BT_FN_UINT32_UINT32, BT_UINT32, BT_UINT32)
225 DEF_FUNCTION_TYPE_1 (BT_FN_UINT64_UINT64, BT_UINT64, BT_UINT64)
226 DEF_FUNCTION_TYPE_1 (BT_FN_BOOL_INT, BT_BOOL, BT_INT)
227
228 DEF_POINTER_TYPE (BT_PTR_FN_VOID_PTR, BT_FN_VOID_PTR)
229
230 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_INT, BT_VOID, BT_PTR, BT_INT)
231 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_STRING_CONST_STRING,
232 BT_STRING, BT_STRING, BT_CONST_STRING)
233 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_CONST_STRING,
234 BT_INT, BT_CONST_STRING, BT_CONST_STRING)
235 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_CONST_STRING,
236 BT_STRING, BT_CONST_STRING, BT_CONST_STRING)
237 DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_STRING_CONST_STRING,
238 BT_SIZE, BT_CONST_STRING, BT_CONST_STRING)
239 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_INT,
240 BT_STRING, BT_CONST_STRING, BT_INT)
241 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_SIZE,
242 BT_STRING, BT_CONST_STRING, BT_SIZE)
243 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_FILEPTR,
244 BT_INT, BT_CONST_STRING, BT_FILEPTR)
245 DEF_FUNCTION_TYPE_2 (BT_FN_INT_INT_FILEPTR,
246 BT_INT, BT_INT, BT_FILEPTR)
247 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTRMODE_PTR,
248 BT_VOID, BT_PTRMODE, BT_PTR)
249 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_PTRMODE,
250 BT_VOID, BT_PTR, BT_PTRMODE)
251 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VALIST_REF_VALIST_ARG,
252 BT_VOID, BT_VALIST_REF, BT_VALIST_ARG)
253 DEF_FUNCTION_TYPE_2 (BT_FN_LONG_LONG_LONG,
254 BT_LONG, BT_LONG, BT_LONG)
255 DEF_FUNCTION_TYPE_2 (BT_FN_INT_PTR_CONST_STRING,
256 BT_INT, BT_PTR, BT_CONST_STRING)
257 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_SIZE,
258 BT_VOID, BT_PTR, BT_SIZE)
259 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOAT,
260 BT_FLOAT, BT_FLOAT, BT_FLOAT)
261 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLE,
262 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE)
263 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE,
264 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE)
265 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOATPTR,
266 BT_FLOAT, BT_FLOAT, BT_FLOAT_PTR)
267 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
268 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE_PTR)
269 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
270 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR)
271 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONGDOUBLE,
272 BT_FLOAT, BT_FLOAT, BT_LONGDOUBLE)
273 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
274 BT_DOUBLE, BT_DOUBLE, BT_LONGDOUBLE)
275 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INT,
276 BT_FLOAT, BT_FLOAT, BT_INT)
277 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INT,
278 BT_DOUBLE, BT_DOUBLE, BT_INT)
279 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INT,
280 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT)
281 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INTPTR,
282 BT_FLOAT, BT_FLOAT, BT_INT_PTR)
283 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INTPTR,
284 BT_DOUBLE, BT_DOUBLE, BT_INT_PTR)
285 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
286 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR)
287 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_INT_FLOAT,
288 BT_FLOAT, BT_INT, BT_FLOAT)
289 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_INT_DOUBLE,
290 BT_DOUBLE, BT_INT, BT_DOUBLE)
291 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_INT_LONGDOUBLE,
292 BT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE)
293 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONG,
294 BT_FLOAT, BT_FLOAT, BT_LONG)
295 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONG,
296 BT_DOUBLE, BT_DOUBLE, BT_LONG)
297 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
298 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONG)
299 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_VALIST_ARG,
300 BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
301 DEF_FUNCTION_TYPE_2 (BT_FN_PTR_SIZE_SIZE,
302 BT_PTR, BT_SIZE, BT_SIZE)
303 DEF_FUNCTION_TYPE_2 (BT_FN_PTR_PTR_SIZE,
304 BT_PTR, BT_PTR, BT_SIZE)
305 DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT,
306 BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT)
307 DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
308 BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE)
309 DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
310 BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
311 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_PTR, BT_VOID, BT_PTR, BT_PTR)
312 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_PTR_CONST_STRING,
313 BT_INT, BT_CONST_STRING, BT_PTR_CONST_STRING)
314 DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_PTR_INT, BT_SIZE, BT_CONST_PTR, BT_INT)
315 DEF_FUNCTION_TYPE_2 (BT_FN_I1_VPTR_I1, BT_I1, BT_VOLATILE_PTR, BT_I1)
316 DEF_FUNCTION_TYPE_2 (BT_FN_I2_VPTR_I2, BT_I2, BT_VOLATILE_PTR, BT_I2)
317 DEF_FUNCTION_TYPE_2 (BT_FN_I4_VPTR_I4, BT_I4, BT_VOLATILE_PTR, BT_I4)
318 DEF_FUNCTION_TYPE_2 (BT_FN_I8_VPTR_I8, BT_I8, BT_VOLATILE_PTR, BT_I8)
319 DEF_FUNCTION_TYPE_2 (BT_FN_I16_VPTR_I16, BT_I16, BT_VOLATILE_PTR, BT_I16)
320 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_LONGPTR_LONGPTR,
321 BT_BOOL, BT_PTR_LONG, BT_PTR_LONG)
322 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR,
323 BT_BOOL, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG)
324 DEF_FUNCTION_TYPE_2 (BT_FN_I1_CONST_VPTR_INT, BT_I1, BT_CONST_VOLATILE_PTR,
325 BT_INT)
326 DEF_FUNCTION_TYPE_2 (BT_FN_I2_CONST_VPTR_INT, BT_I2, BT_CONST_VOLATILE_PTR,
327 BT_INT)
328 DEF_FUNCTION_TYPE_2 (BT_FN_I4_CONST_VPTR_INT, BT_I4, BT_CONST_VOLATILE_PTR,
329 BT_INT)
330 DEF_FUNCTION_TYPE_2 (BT_FN_I8_CONST_VPTR_INT, BT_I8, BT_CONST_VOLATILE_PTR,
331 BT_INT)
332 DEF_FUNCTION_TYPE_2 (BT_FN_I16_CONST_VPTR_INT, BT_I16, BT_CONST_VOLATILE_PTR,
333 BT_INT)
334 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_INT, BT_VOID, BT_VOLATILE_PTR, BT_INT)
335 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_VPTR_INT, BT_BOOL, BT_VOLATILE_PTR, BT_INT)
336 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_SIZE_CONST_VPTR, BT_BOOL, BT_SIZE,
337 BT_CONST_VOLATILE_PTR)
338 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_INT_BOOL, BT_BOOL, BT_INT, BT_BOOL)
339 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT_UINT, BT_VOID, BT_UINT, BT_UINT)
340
341 DEF_POINTER_TYPE (BT_PTR_FN_VOID_PTR_PTR, BT_FN_VOID_PTR_PTR)
342
343 DEF_FUNCTION_TYPE_3 (BT_FN_STRING_STRING_CONST_STRING_SIZE,
344 BT_STRING, BT_STRING, BT_CONST_STRING, BT_SIZE)
345 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_SIZE,
346 BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_SIZE)
347 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_CONST_PTR_SIZE,
348 BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE)
349 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_CONST_PTR_SIZE,
350 BT_VOID, BT_PTR, BT_CONST_PTR, BT_SIZE)
351 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_PTR_CONST_PTR_SIZE,
352 BT_INT, BT_CONST_PTR, BT_CONST_PTR, BT_SIZE)
353 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_INT_SIZE,
354 BT_PTR, BT_PTR, BT_INT, BT_SIZE)
355 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_SIZE,
356 BT_VOID, BT_PTR, BT_INT, BT_SIZE)
357 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_INT,
358 BT_VOID, BT_PTR, BT_INT, BT_INT)
359 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_CONST_PTR_PTR_SIZE,
360 BT_VOID, BT_CONST_PTR, BT_PTR, BT_SIZE)
361 DEF_FUNCTION_TYPE_3 (BT_FN_INT_STRING_CONST_STRING_VALIST_ARG,
362 BT_INT, BT_STRING, BT_CONST_STRING, BT_VALIST_ARG)
363 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG,
364 BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_VALIST_ARG)
365 DEF_FUNCTION_TYPE_3 (BT_FN_INT_FILEPTR_CONST_STRING_VALIST_ARG,
366 BT_INT, BT_FILEPTR, BT_CONST_STRING, BT_VALIST_ARG)
367 DEF_FUNCTION_TYPE_3 (BT_FN_INT_PTR_PTR_PTR,
368 BT_INT, BT_PTR, BT_PTR, BT_PTR)
369 DEF_FUNCTION_TYPE_3 (BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
370 BT_STRING, BT_CONST_STRING, BT_CONST_STRING, BT_INT)
371 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_FLOAT,
372 BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_FLOAT)
373 DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
374 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_DOUBLE)
375 DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE,
376 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE)
377 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_INTPTR,
378 BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_INT_PTR)
379 DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
380 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_INT_PTR)
381 DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
382 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR)
383 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
384 BT_VOID, BT_FLOAT, BT_FLOAT_PTR, BT_FLOAT_PTR)
385 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
386 BT_VOID, BT_DOUBLE, BT_DOUBLE_PTR, BT_DOUBLE_PTR)
387 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR,
388 BT_VOID, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR, BT_LONGDOUBLE_PTR)
389 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_PTR_PTR, BT_VOID, BT_PTR, BT_PTR, BT_PTR)
390 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_PTR_CONST_STRING_PTR_CONST_STRING,
391 BT_INT, BT_CONST_STRING, BT_PTR_CONST_STRING, BT_PTR_CONST_STRING)
392 DEF_FUNCTION_TYPE_3 (BT_FN_INT_INT_CONST_STRING_VALIST_ARG,
393 BT_INT, BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
394 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I1_I1, BT_BOOL, BT_VOLATILE_PTR,
395 BT_I1, BT_I1)
396 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I2_I2, BT_BOOL, BT_VOLATILE_PTR,
397 BT_I2, BT_I2)
398 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I4_I4, BT_BOOL, BT_VOLATILE_PTR,
399 BT_I4, BT_I4)
400 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I8_I8, BT_BOOL, BT_VOLATILE_PTR,
401 BT_I8, BT_I8)
402 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I16_I16, BT_BOOL, BT_VOLATILE_PTR,
403 BT_I16, BT_I16)
404 DEF_FUNCTION_TYPE_3 (BT_FN_I1_VPTR_I1_I1, BT_I1, BT_VOLATILE_PTR, BT_I1, BT_I1)
405 DEF_FUNCTION_TYPE_3 (BT_FN_I2_VPTR_I2_I2, BT_I2, BT_VOLATILE_PTR, BT_I2, BT_I2)
406 DEF_FUNCTION_TYPE_3 (BT_FN_I4_VPTR_I4_I4, BT_I4, BT_VOLATILE_PTR, BT_I4, BT_I4)
407 DEF_FUNCTION_TYPE_3 (BT_FN_I8_VPTR_I8_I8, BT_I8, BT_VOLATILE_PTR, BT_I8, BT_I8)
408 DEF_FUNCTION_TYPE_3 (BT_FN_I16_VPTR_I16_I16, BT_I16, BT_VOLATILE_PTR,
409 BT_I16, BT_I16)
410 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_CONST_PTR_INT_SIZE, BT_PTR,
411 BT_CONST_PTR, BT_INT, BT_SIZE)
412 DEF_FUNCTION_TYPE_3 (BT_FN_I1_VPTR_I1_INT, BT_I1, BT_VOLATILE_PTR, BT_I1, BT_INT)
413 DEF_FUNCTION_TYPE_3 (BT_FN_I2_VPTR_I2_INT, BT_I2, BT_VOLATILE_PTR, BT_I2, BT_INT)
414 DEF_FUNCTION_TYPE_3 (BT_FN_I4_VPTR_I4_INT, BT_I4, BT_VOLATILE_PTR, BT_I4, BT_INT)
415 DEF_FUNCTION_TYPE_3 (BT_FN_I8_VPTR_I8_INT, BT_I8, BT_VOLATILE_PTR, BT_I8, BT_INT)
416 DEF_FUNCTION_TYPE_3 (BT_FN_I16_VPTR_I16_INT, BT_I16, BT_VOLATILE_PTR, BT_I16, BT_INT)
417 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I1_INT, BT_VOID, BT_VOLATILE_PTR, BT_I1, BT_INT)
418 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I2_INT, BT_VOID, BT_VOLATILE_PTR, BT_I2, BT_INT)
419 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I4_INT, BT_VOID, BT_VOLATILE_PTR, BT_I4, BT_INT)
420 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I8_INT, BT_VOID, BT_VOLATILE_PTR, BT_I8, BT_INT)
421 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I16_INT, BT_VOID, BT_VOLATILE_PTR, BT_I16, BT_INT)
422 DEF_FUNCTION_TYPE_3 (BT_FN_INT_PTRPTR_SIZE_SIZE, BT_INT, BT_PTR_PTR, BT_SIZE, BT_SIZE)
423
424 DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_CONST_PTR_SIZE_SIZE_FILEPTR,
425 BT_SIZE, BT_CONST_PTR, BT_SIZE, BT_SIZE, BT_FILEPTR)
426 DEF_FUNCTION_TYPE_4 (BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG,
427 BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_VALIST_ARG)
428 DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
429 BT_SIZE, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_CONST_PTR)
430 DEF_FUNCTION_TYPE_4 (BT_FN_PTR_PTR_CONST_PTR_SIZE_SIZE,
431 BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE, BT_SIZE)
432 DEF_FUNCTION_TYPE_4 (BT_FN_PTR_PTR_INT_SIZE_SIZE,
433 BT_PTR, BT_PTR, BT_INT, BT_SIZE, BT_SIZE)
434 DEF_FUNCTION_TYPE_4 (BT_FN_STRING_STRING_CONST_STRING_SIZE_SIZE,
435 BT_STRING, BT_STRING, BT_CONST_STRING, BT_SIZE, BT_SIZE)
436 DEF_FUNCTION_TYPE_4 (BT_FN_INT_FILEPTR_INT_CONST_STRING_VALIST_ARG,
437 BT_INT, BT_FILEPTR, BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
438 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_OMPFN_PTR_UINT_UINT,
439 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, BT_UINT)
440 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_PTR_WORD_WORD_PTR,
441 BT_VOID, BT_PTR, BT_WORD, BT_WORD, BT_PTR)
442 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_SIZE_VPTR_PTR_INT, BT_VOID, BT_SIZE,
443 BT_VOLATILE_PTR, BT_PTR, BT_INT)
444 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_SIZE_CONST_VPTR_PTR_INT, BT_VOID, BT_SIZE,
445 BT_CONST_VOLATILE_PTR, BT_PTR, BT_INT)
446
447 DEF_FUNCTION_TYPE_5 (BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VALIST_ARG,
448 BT_INT, BT_STRING, BT_INT, BT_SIZE, BT_CONST_STRING,
449 BT_VALIST_ARG)
450 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR,
451 BT_BOOL, BT_LONG, BT_LONG, BT_LONG,
452 BT_PTR_LONG, BT_PTR_LONG)
453 DEF_FUNCTION_TYPE_5 (BT_FN_VOID_SIZE_VPTR_PTR_PTR_INT, BT_VOID, BT_SIZE,
454 BT_VOLATILE_PTR, BT_PTR, BT_PTR, BT_INT)
455 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I1_INT_INT,
456 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I1, BT_INT, BT_INT)
457 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I2_INT_INT,
458 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I2, BT_INT, BT_INT)
459 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I4_INT_INT,
460 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I4, BT_INT, BT_INT)
461 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I8_INT_INT,
462 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I8, BT_INT, BT_INT)
463 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I16_INT_INT,
464 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I16, BT_INT, BT_INT)
465 DEF_FUNCTION_TYPE_5 (BT_FN_VOID_OMPFN_PTR_UINT_UINT_UINT,
466 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, BT_UINT,
467 BT_UINT)
468
469 DEF_FUNCTION_TYPE_6 (BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VALIST_ARG,
470 BT_INT, BT_STRING, BT_SIZE, BT_INT, BT_SIZE,
471 BT_CONST_STRING, BT_VALIST_ARG)
472 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
473 BT_BOOL, BT_LONG, BT_LONG, BT_LONG, BT_LONG,
474 BT_PTR_LONG, BT_PTR_LONG)
475 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR,
476 BT_BOOL, BT_BOOL, BT_ULONGLONG, BT_ULONGLONG,
477 BT_ULONGLONG, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG)
478 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I1_BOOL_INT_INT,
479 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I1, BT_BOOL, BT_INT,
480 BT_INT)
481 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I2_BOOL_INT_INT,
482 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I2, BT_BOOL, BT_INT,
483 BT_INT)
484 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I4_BOOL_INT_INT,
485 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I4, BT_BOOL, BT_INT,
486 BT_INT)
487 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I8_BOOL_INT_INT,
488 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I8, BT_BOOL, BT_INT,
489 BT_INT)
490 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I16_BOOL_INT_INT,
491 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I16, BT_BOOL, BT_INT,
492 BT_INT)
493 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_SIZE_VPTR_PTR_PTR_INT_INT, BT_BOOL, BT_SIZE,
494 BT_VOLATILE_PTR, BT_PTR, BT_PTR, BT_INT, BT_INT)
495 DEF_FUNCTION_TYPE_6 (BT_FN_VOID_INT_PTR_SIZE_PTR_PTR_PTR,
496 BT_VOID, BT_INT, BT_PTR, BT_SIZE, BT_PTR, BT_PTR, BT_PTR)
497
498 DEF_FUNCTION_TYPE_7 (BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_UINT,
499 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT,
500 BT_LONG, BT_LONG, BT_LONG, BT_UINT)
501 DEF_FUNCTION_TYPE_7 (BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
502 BT_BOOL, BT_BOOL, BT_ULONGLONG, BT_ULONGLONG,
503 BT_ULONGLONG, BT_ULONGLONG,
504 BT_PTR_ULONGLONG, BT_PTR_ULONGLONG)
505 DEF_FUNCTION_TYPE_7 (BT_FN_VOID_INT_OMPFN_PTR_SIZE_PTR_PTR_PTR,
506 BT_VOID, BT_INT, BT_PTR_FN_VOID_PTR, BT_PTR, BT_SIZE,
507 BT_PTR, BT_PTR, BT_PTR)
508
509 DEF_FUNCTION_TYPE_8 (BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT,
510 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT,
511 BT_LONG, BT_LONG, BT_LONG, BT_LONG, BT_UINT)
512 DEF_FUNCTION_TYPE_8 (BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR,
513 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR,
514 BT_PTR_FN_VOID_PTR_PTR, BT_LONG, BT_LONG,
515 BT_BOOL, BT_UINT, BT_PTR)
516
517 DEF_FUNCTION_TYPE_VAR_0 (BT_FN_VOID_VAR, BT_VOID)
518 DEF_FUNCTION_TYPE_VAR_0 (BT_FN_INT_VAR, BT_INT)
519 DEF_FUNCTION_TYPE_VAR_0 (BT_FN_PTR_VAR, BT_PTR)
520
521 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_VALIST_REF_VAR,
522 BT_VOID, BT_VALIST_REF)
523 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_CONST_PTR_VAR,
524 BT_VOID, BT_CONST_PTR)
525 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_INT_CONST_STRING_VAR,
526 BT_INT, BT_CONST_STRING)
527 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_UINT32_UINT32_VAR,
528 BT_UINT32, BT_UINT32)
529
530 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_FILEPTR_CONST_STRING_VAR,
531 BT_INT, BT_FILEPTR, BT_CONST_STRING)
532 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_STRING_CONST_STRING_VAR,
533 BT_INT, BT_STRING, BT_CONST_STRING)
534 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_CONST_STRING_CONST_STRING_VAR,
535 BT_INT, BT_CONST_STRING, BT_CONST_STRING)
536 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_INT_CONST_STRING_VAR,
537 BT_INT, BT_INT, BT_CONST_STRING)
538 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_PTR_CONST_PTR_SIZE_VAR, BT_PTR,
539 BT_CONST_PTR, BT_SIZE)
540
541 DEF_FUNCTION_TYPE_VAR_3 (BT_FN_INT_STRING_SIZE_CONST_STRING_VAR,
542 BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING)
543 DEF_FUNCTION_TYPE_VAR_3 (BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR,
544 BT_SSIZE, BT_STRING, BT_SIZE, BT_CONST_STRING)
545 DEF_FUNCTION_TYPE_VAR_3 (BT_FN_INT_FILEPTR_INT_CONST_STRING_VAR,
546 BT_INT, BT_FILEPTR, BT_INT, BT_CONST_STRING)
547
548 DEF_FUNCTION_TYPE_VAR_4 (BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VAR,
549 BT_INT, BT_STRING, BT_INT, BT_SIZE, BT_CONST_STRING)
550
551 DEF_FUNCTION_TYPE_VAR_5 (BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VAR,
552 BT_INT, BT_STRING, BT_SIZE, BT_INT, BT_SIZE,
553 BT_CONST_STRING)
554
555 DEF_FUNCTION_TYPE_VAR_5 (BT_FN_INT_INT_INT_INT_INT_INT_VAR,
556 BT_INT, BT_INT, BT_INT, BT_INT, BT_INT, BT_INT)
557
558 DEF_POINTER_TYPE (BT_PTR_FN_VOID_VAR, BT_FN_VOID_VAR)
559 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_FN_VOID_VAR_PTR_SIZE,
560 BT_PTR, BT_PTR_FN_VOID_VAR, BT_PTR, BT_SIZE)
561
562
563 DEF_FUNCTION_TYPE_1 (BT_FN_I1_VPTR, BT_I1, BT_VOLATILE_PTR)
564 DEF_FUNCTION_TYPE_1 (BT_FN_I2_VPTR, BT_I2, BT_VOLATILE_PTR)
565 DEF_FUNCTION_TYPE_1 (BT_FN_I4_VPTR, BT_I4, BT_VOLATILE_PTR)
566 DEF_FUNCTION_TYPE_1 (BT_FN_I8_VPTR, BT_I8, BT_VOLATILE_PTR)
567 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_VPTR, BT_FLOAT, BT_VOLATILE_PTR)
568 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_DOUBLE_PTR, BT_DOUBLE, BT_DOUBLE_PTR)
569 DEF_FUNCTION_TYPE_1 (BT_FN_LDOUBLE_VPTR, BT_LONGDOUBLE, BT_VOLATILE_PTR)
570
571 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I1, BT_VOID, BT_VOLATILE_PTR, BT_I1)
572 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I2, BT_VOID, BT_VOLATILE_PTR, BT_I2)
573 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I4, BT_VOID, BT_VOLATILE_PTR, BT_I4)
574 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I8, BT_VOID, BT_VOLATILE_PTR, BT_I8)
575 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_FLOAT, BT_VOID, BT_VOLATILE_PTR, BT_FLOAT)
576 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_DOUBLE, BT_VOID,
577 BT_VOLATILE_PTR, BT_DOUBLE)
578 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_LDOUBLE, BT_VOID,
579 BT_VOLATILE_PTR, BT_LONGDOUBLE)
580 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_SIZE, BT_VOID,
581 BT_VOLATILE_PTR, BT_SIZE)