Import GCC-8 to a new vendor branch
[dragonfly.git] / contrib / gcc-8.0 / gcc / builtin-types.def
1 /* Copyright (C) 2001-2018 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_INT8, signed_char_type_node)
71 DEF_PRIMITIVE_TYPE (BT_INT16, short_integer_type_node)
72 DEF_PRIMITIVE_TYPE (BT_UINT8, unsigned_char_type_node)
73 DEF_PRIMITIVE_TYPE (BT_UINT16, uint16_type_node)
74 DEF_PRIMITIVE_TYPE (BT_UINT32, uint32_type_node)
75 DEF_PRIMITIVE_TYPE (BT_UINT64, uint64_type_node)
76 DEF_PRIMITIVE_TYPE (BT_WORD, (*lang_hooks.types.type_for_mode) (word_mode, 1))
77 DEF_PRIMITIVE_TYPE (BT_UNWINDWORD, (*lang_hooks.types.type_for_mode)
78                                     (targetm.unwind_word_mode (), 1))
79 DEF_PRIMITIVE_TYPE (BT_FLOAT, float_type_node)
80 DEF_PRIMITIVE_TYPE (BT_DOUBLE, double_type_node)
81 DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE, long_double_type_node)
82 DEF_PRIMITIVE_TYPE (BT_FLOAT16, (float16_type_node
83                                  ? float16_type_node
84                                  : error_mark_node))
85 DEF_PRIMITIVE_TYPE (BT_FLOAT32, (float32_type_node
86                                  ? float32_type_node
87                                  : error_mark_node))
88 DEF_PRIMITIVE_TYPE (BT_FLOAT64, (float64_type_node
89                                  ? float64_type_node
90                                  : error_mark_node))
91 DEF_PRIMITIVE_TYPE (BT_FLOAT128, (float128_type_node
92                                   ? float128_type_node
93                                   : error_mark_node))
94 DEF_PRIMITIVE_TYPE (BT_FLOAT32X, (float32x_type_node
95                                   ? float32x_type_node
96                                   : error_mark_node))
97 DEF_PRIMITIVE_TYPE (BT_FLOAT64X, (float64x_type_node
98                                   ? float64x_type_node
99                                   : error_mark_node))
100 DEF_PRIMITIVE_TYPE (BT_FLOAT128X, (float128x_type_node
101                                    ? float128x_type_node
102                                    : error_mark_node))
103 DEF_PRIMITIVE_TYPE (BT_COMPLEX_FLOAT, complex_float_type_node)
104 DEF_PRIMITIVE_TYPE (BT_COMPLEX_DOUBLE, complex_double_type_node)
105 DEF_PRIMITIVE_TYPE (BT_COMPLEX_LONGDOUBLE, complex_long_double_type_node)
106
107 DEF_PRIMITIVE_TYPE (BT_PTR, ptr_type_node)
108 DEF_PRIMITIVE_TYPE (BT_FILEPTR, fileptr_type_node)
109 DEF_PRIMITIVE_TYPE (BT_CONST_TM_PTR, const_tm_ptr_type_node)
110 DEF_PRIMITIVE_TYPE (BT_FENV_T_PTR, fenv_t_ptr_type_node)
111 DEF_PRIMITIVE_TYPE (BT_CONST_FENV_T_PTR, const_fenv_t_ptr_type_node)
112 DEF_PRIMITIVE_TYPE (BT_FEXCEPT_T_PTR, fexcept_t_ptr_type_node)
113 DEF_PRIMITIVE_TYPE (BT_CONST_FEXCEPT_T_PTR, const_fexcept_t_ptr_type_node)
114 DEF_PRIMITIVE_TYPE (BT_CONST_PTR, const_ptr_type_node)
115 DEF_PRIMITIVE_TYPE (BT_VOLATILE_PTR,
116                     build_pointer_type
117                      (build_qualified_type (void_type_node,
118                                             TYPE_QUAL_VOLATILE)))
119 DEF_PRIMITIVE_TYPE (BT_CONST_VOLATILE_PTR,
120                     build_pointer_type
121                      (build_qualified_type (void_type_node,
122                                           TYPE_QUAL_VOLATILE|TYPE_QUAL_CONST)))
123 DEF_PRIMITIVE_TYPE (BT_PTRMODE, (*lang_hooks.types.type_for_mode)(ptr_mode, 0))
124 DEF_PRIMITIVE_TYPE (BT_INT_PTR, integer_ptr_type_node)
125 DEF_PRIMITIVE_TYPE (BT_FLOAT_PTR, float_ptr_type_node)
126 DEF_PRIMITIVE_TYPE (BT_DOUBLE_PTR, double_ptr_type_node)
127 DEF_PRIMITIVE_TYPE (BT_CONST_DOUBLE_PTR,
128                     build_pointer_type
129                      (build_qualified_type (double_type_node,
130                                             TYPE_QUAL_CONST)))
131 DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE_PTR, long_double_ptr_type_node)
132 DEF_PRIMITIVE_TYPE (BT_PID, pid_type_node)
133 DEF_PRIMITIVE_TYPE (BT_SIZE, size_type_node)
134 DEF_PRIMITIVE_TYPE (BT_SSIZE, signed_size_type_node)
135 DEF_PRIMITIVE_TYPE (BT_WINT, wint_type_node)
136 DEF_PRIMITIVE_TYPE (BT_STRING, string_type_node)
137 DEF_PRIMITIVE_TYPE (BT_CONST_STRING, const_string_type_node)
138
139 DEF_PRIMITIVE_TYPE (BT_DFLOAT32, dfloat32_type_node)
140 DEF_PRIMITIVE_TYPE (BT_DFLOAT64, dfloat64_type_node)
141 DEF_PRIMITIVE_TYPE (BT_DFLOAT128, dfloat128_type_node)
142 DEF_PRIMITIVE_TYPE (BT_DFLOAT32_PTR, dfloat32_ptr_type_node)
143 DEF_PRIMITIVE_TYPE (BT_DFLOAT64_PTR, dfloat64_ptr_type_node)
144 DEF_PRIMITIVE_TYPE (BT_DFLOAT128_PTR, dfloat128_ptr_type_node)
145
146 DEF_PRIMITIVE_TYPE (BT_VALIST_REF, va_list_ref_type_node)
147 DEF_PRIMITIVE_TYPE (BT_VALIST_ARG, va_list_arg_type_node)
148
149 DEF_PRIMITIVE_TYPE (BT_I1, builtin_type_for_size (BITS_PER_UNIT*1, 1))
150 DEF_PRIMITIVE_TYPE (BT_I2, builtin_type_for_size (BITS_PER_UNIT*2, 1))
151 DEF_PRIMITIVE_TYPE (BT_I4, builtin_type_for_size (BITS_PER_UNIT*4, 1))
152 DEF_PRIMITIVE_TYPE (BT_I8, builtin_type_for_size (BITS_PER_UNIT*8, 1))
153 DEF_PRIMITIVE_TYPE (BT_I16, builtin_type_for_size (BITS_PER_UNIT*16, 1))
154
155 DEF_PRIMITIVE_TYPE (BT_BND, pointer_bounds_type_node)
156
157 /* The C type `char * const *'.  */
158 DEF_PRIMITIVE_TYPE (BT_PTR_CONST_STRING,
159                     build_pointer_type
160                      (build_qualified_type (string_type_node,
161                                             TYPE_QUAL_CONST)))
162
163 DEF_POINTER_TYPE (BT_PTR_UINT, BT_UINT)
164 DEF_POINTER_TYPE (BT_PTR_LONG, BT_LONG)
165 DEF_POINTER_TYPE (BT_PTR_ULONG, BT_ULONG)
166 DEF_POINTER_TYPE (BT_PTR_LONGLONG, BT_LONGLONG)
167 DEF_POINTER_TYPE (BT_PTR_ULONGLONG, BT_ULONGLONG)
168 DEF_POINTER_TYPE (BT_PTR_PTR, BT_PTR)
169
170 DEF_FUNCTION_TYPE_0 (BT_FN_VOID, BT_VOID)
171 DEF_FUNCTION_TYPE_0 (BT_FN_BOOL, BT_BOOL)
172 DEF_FUNCTION_TYPE_0 (BT_FN_PTR, BT_PTR)
173 DEF_FUNCTION_TYPE_0 (BT_FN_CONST_STRING, BT_CONST_STRING)
174 DEF_FUNCTION_TYPE_0 (BT_FN_PID, BT_PID)
175 DEF_FUNCTION_TYPE_0 (BT_FN_INT, BT_INT)
176 DEF_FUNCTION_TYPE_0 (BT_FN_UINT, BT_UINT)
177 DEF_FUNCTION_TYPE_0 (BT_FN_ULONG, BT_ULONG)
178 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT, BT_FLOAT)
179 DEF_FUNCTION_TYPE_0 (BT_FN_DOUBLE, BT_DOUBLE)
180 /* For "long double" we use LONGDOUBLE (not LONG_DOUBLE) to
181    distinguish it from two types in sequence, "long" followed by
182    "double".  */
183 DEF_FUNCTION_TYPE_0 (BT_FN_LONGDOUBLE, BT_LONGDOUBLE)
184 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT16, BT_FLOAT16)
185 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT32, BT_FLOAT32)
186 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT64, BT_FLOAT64)
187 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT128, BT_FLOAT128)
188 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT32X, BT_FLOAT32X)
189 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT64X, BT_FLOAT64X)
190 DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT128X, BT_FLOAT128X)
191 DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT32, BT_DFLOAT32)
192 DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT64, BT_DFLOAT64)
193 DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT128, BT_DFLOAT128)
194
195 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONG, BT_LONG, BT_LONG)
196 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGLONG, BT_LONGLONG, BT_LONGLONG)
197 DEF_FUNCTION_TYPE_1 (BT_FN_INTMAX_INTMAX, BT_INTMAX, BT_INTMAX)
198 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_FLOAT, BT_FLOAT, BT_FLOAT)
199 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_DOUBLE, BT_DOUBLE, BT_DOUBLE)
200 DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_LONGDOUBLE,
201                      BT_LONGDOUBLE, BT_LONGDOUBLE)
202 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT16_FLOAT16, BT_FLOAT16, BT_FLOAT16)
203 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT32_FLOAT32, BT_FLOAT32, BT_FLOAT32)
204 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT64_FLOAT64, BT_FLOAT64, BT_FLOAT64)
205 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT128_FLOAT128, BT_FLOAT128, BT_FLOAT128)
206 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT32X_FLOAT32X, BT_FLOAT32X, BT_FLOAT32X)
207 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT64X_FLOAT64X, BT_FLOAT64X, BT_FLOAT64X)
208 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT128X_FLOAT128X, BT_FLOAT128X, BT_FLOAT128X)
209 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT,
210                      BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT)
211 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
212                      BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE)
213 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
214                      BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
215 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_COMPLEX_FLOAT,
216                      BT_FLOAT, BT_COMPLEX_FLOAT)
217 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_COMPLEX_DOUBLE,
218                      BT_DOUBLE, BT_COMPLEX_DOUBLE)
219 DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE,
220                      BT_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
221 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_FLOAT_FLOAT,
222                      BT_COMPLEX_FLOAT, BT_FLOAT)
223 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_DOUBLE_DOUBLE,
224                      BT_COMPLEX_DOUBLE, BT_DOUBLE)
225 DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_LONGDOUBLE,
226                      BT_COMPLEX_LONGDOUBLE, BT_LONGDOUBLE)
227 DEF_FUNCTION_TYPE_1 (BT_FN_PTR_UINT, BT_PTR, BT_UINT)
228 DEF_FUNCTION_TYPE_1 (BT_FN_PTR_SIZE, BT_PTR, BT_SIZE)
229 DEF_FUNCTION_TYPE_1 (BT_FN_INT_INT, BT_INT, BT_INT)
230 DEF_FUNCTION_TYPE_1 (BT_FN_INT_UINT, BT_INT, BT_UINT)
231 DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONG, BT_INT, BT_LONG)
232 DEF_FUNCTION_TYPE_1 (BT_FN_INT_ULONG, BT_INT, BT_ULONG)
233 DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGLONG, BT_INT, BT_LONGLONG)
234 DEF_FUNCTION_TYPE_1 (BT_FN_INT_ULONGLONG, BT_INT, BT_ULONGLONG)
235 DEF_FUNCTION_TYPE_1 (BT_FN_INT_INTMAX, BT_INT, BT_INTMAX)
236 DEF_FUNCTION_TYPE_1 (BT_FN_INT_UINTMAX, BT_INT, BT_UINTMAX)
237 DEF_FUNCTION_TYPE_1 (BT_FN_INT_PTR, BT_INT, BT_PTR)
238 DEF_FUNCTION_TYPE_1 (BT_FN_INT_FLOAT, BT_INT, BT_FLOAT)
239 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DOUBLE, BT_INT, BT_DOUBLE)
240 DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE)
241 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT32, BT_INT, BT_DFLOAT32)
242 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT64, BT_INT, BT_DFLOAT64)
243 DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT128, BT_INT, BT_DFLOAT128)
244 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_FLOAT, BT_LONG, BT_FLOAT)
245 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_DOUBLE, BT_LONG, BT_DOUBLE)
246 DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONGDOUBLE, BT_LONG, BT_LONGDOUBLE)
247 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_FLOAT, BT_LONGLONG, BT_FLOAT)
248 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_DOUBLE, BT_LONGLONG, BT_DOUBLE)
249 DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGDOUBLE, BT_LONGLONG, BT_LONGDOUBLE)
250 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTR, BT_VOID, BT_PTR)
251 DEF_FUNCTION_TYPE_1 (BT_FN_SIZE_CONST_STRING, BT_SIZE, BT_CONST_STRING)
252 DEF_FUNCTION_TYPE_1 (BT_FN_INT_CONST_STRING, BT_INT, BT_CONST_STRING)
253 DEF_FUNCTION_TYPE_1 (BT_FN_PTR_PTR, BT_PTR, BT_PTR)
254 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_VALIST_REF, BT_VOID, BT_VALIST_REF)
255 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_INT, BT_VOID, BT_INT)
256 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_CONST_STRING, BT_FLOAT, BT_CONST_STRING)
257 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_STRING, BT_DOUBLE, BT_CONST_STRING)
258 DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_CONST_STRING,
259                      BT_LONGDOUBLE, BT_CONST_STRING)
260 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT16_CONST_STRING, BT_FLOAT16, BT_CONST_STRING)
261 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT32_CONST_STRING, BT_FLOAT32, BT_CONST_STRING)
262 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT64_CONST_STRING, BT_FLOAT64, BT_CONST_STRING)
263 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT128_CONST_STRING, BT_FLOAT128, BT_CONST_STRING)
264 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT32X_CONST_STRING, BT_FLOAT32X, BT_CONST_STRING)
265 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT64X_CONST_STRING, BT_FLOAT64X, BT_CONST_STRING)
266 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT128X_CONST_STRING, BT_FLOAT128X, BT_CONST_STRING)
267 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT32_CONST_STRING, BT_DFLOAT32, BT_CONST_STRING)
268 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT64_CONST_STRING, BT_DFLOAT64, BT_CONST_STRING)
269 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT128_CONST_STRING,
270                      BT_DFLOAT128, BT_CONST_STRING)
271 DEF_FUNCTION_TYPE_1 (BT_FN_STRING_CONST_STRING, BT_STRING, BT_CONST_STRING)
272 DEF_FUNCTION_TYPE_1 (BT_FN_UNWINDWORD_PTR, BT_UNWINDWORD, BT_PTR)
273 DEF_FUNCTION_TYPE_1 (BT_FN_INT_WINT, BT_INT, BT_WINT)
274 DEF_FUNCTION_TYPE_1 (BT_FN_WINT_WINT, BT_WINT, BT_WINT)
275 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT32_DFLOAT32, BT_DFLOAT32, BT_DFLOAT32)
276 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT64_DFLOAT64, BT_DFLOAT64, BT_DFLOAT64)
277 DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT128_DFLOAT128, BT_DFLOAT128, BT_DFLOAT128)
278 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_VPTR, BT_VOID, BT_VOLATILE_PTR)
279 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTRPTR, BT_VOID, BT_PTR_PTR)
280 DEF_FUNCTION_TYPE_1 (BT_FN_VOID_CONST_PTR, BT_VOID, BT_CONST_PTR)
281 DEF_FUNCTION_TYPE_1 (BT_FN_UINT_UINT, BT_UINT, BT_UINT)
282 DEF_FUNCTION_TYPE_1 (BT_FN_UINT_INT, BT_UINT, BT_INT)
283 DEF_FUNCTION_TYPE_1 (BT_FN_UINT_ULONG, BT_UINT, BT_ULONG)
284 DEF_FUNCTION_TYPE_1 (BT_FN_UINT_LONG, BT_UINT, BT_LONG)
285 DEF_FUNCTION_TYPE_1 (BT_FN_UINT_PTR, BT_UINT, BT_PTR)
286 DEF_FUNCTION_TYPE_1 (BT_FN_ULONG_PTR, BT_ULONG, BT_PTR)
287 DEF_FUNCTION_TYPE_1 (BT_FN_ULONG_ULONG, BT_ULONG, BT_ULONG)
288 DEF_FUNCTION_TYPE_1 (BT_FN_ULONGLONG_ULONGLONG, BT_ULONGLONG, BT_ULONGLONG)
289 DEF_FUNCTION_TYPE_1 (BT_FN_INT8_FLOAT, BT_INT8, BT_FLOAT)
290 DEF_FUNCTION_TYPE_1 (BT_FN_INT16_FLOAT, BT_INT16, BT_FLOAT)
291 DEF_FUNCTION_TYPE_1 (BT_FN_UINT32_FLOAT, BT_UINT32, BT_FLOAT)
292 DEF_FUNCTION_TYPE_1 (BT_FN_UINT16_FLOAT, BT_UINT16, BT_FLOAT)
293 DEF_FUNCTION_TYPE_1 (BT_FN_UINT8_FLOAT, BT_UINT8, BT_FLOAT)
294 DEF_FUNCTION_TYPE_1 (BT_FN_UINT16_UINT16, BT_UINT16, BT_UINT16)
295 DEF_FUNCTION_TYPE_1 (BT_FN_UINT32_UINT32, BT_UINT32, BT_UINT32)
296 DEF_FUNCTION_TYPE_1 (BT_FN_UINT64_UINT64, BT_UINT64, BT_UINT64)
297 DEF_FUNCTION_TYPE_1 (BT_FN_UINT64_FLOAT, BT_UINT64, BT_FLOAT)
298 DEF_FUNCTION_TYPE_1 (BT_FN_BOOL_INT, BT_BOOL, BT_INT)
299 DEF_FUNCTION_TYPE_1 (BT_FN_PTR_CONST_PTR, BT_PTR, BT_CONST_PTR)
300 DEF_FUNCTION_TYPE_1 (BT_FN_CONST_PTR_CONST_PTR, BT_CONST_PTR, BT_CONST_PTR)
301 DEF_FUNCTION_TYPE_1 (BT_FN_BND_CONST_PTR, BT_BND, BT_CONST_PTR)
302 DEF_FUNCTION_TYPE_1 (BT_FN_CONST_PTR_BND, BT_CONST_PTR, BT_BND)
303 DEF_FUNCTION_TYPE_1 (BT_FN_UINT16_UINT32, BT_UINT16, BT_UINT32)
304 DEF_FUNCTION_TYPE_1 (BT_FN_UINT32_UINT16, BT_UINT32, BT_UINT16)
305 DEF_FUNCTION_TYPE_1 (BT_FN_INT_FENV_T_PTR, BT_INT, BT_FENV_T_PTR)
306 DEF_FUNCTION_TYPE_1 (BT_FN_INT_CONST_FENV_T_PTR, BT_INT, BT_CONST_FENV_T_PTR)
307
308 DEF_POINTER_TYPE (BT_PTR_FN_VOID_PTR, BT_FN_VOID_PTR)
309
310 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_INT, BT_VOID, BT_PTR, BT_INT)
311 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_STRING_CONST_STRING,
312                      BT_STRING, BT_STRING, BT_CONST_STRING)
313 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_CONST_STRING,
314                      BT_INT, BT_CONST_STRING, BT_CONST_STRING)
315 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_CONST_STRING,
316                      BT_STRING, BT_CONST_STRING, BT_CONST_STRING)
317 DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_STRING_CONST_STRING,
318                      BT_SIZE, BT_CONST_STRING, BT_CONST_STRING)
319 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_INT,
320                      BT_STRING, BT_CONST_STRING, BT_INT)
321 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_SIZE,
322                      BT_STRING, BT_CONST_STRING, BT_SIZE)
323 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_FILEPTR,
324                      BT_INT, BT_CONST_STRING, BT_FILEPTR)
325 DEF_FUNCTION_TYPE_2 (BT_FN_INT_INT_FILEPTR,
326                      BT_INT, BT_INT, BT_FILEPTR)
327 DEF_FUNCTION_TYPE_2 (BT_FN_UINT16_UINT16_UINT16,
328                      BT_UINT16, BT_UINT16, BT_UINT16)
329 DEF_FUNCTION_TYPE_2 (BT_FN_INT_PTR_INT,
330                      BT_INT, BT_PTR, BT_INT)
331 DEF_FUNCTION_TYPE_2 (BT_FN_UINT_PTR_UINT,
332                      BT_UINT, BT_PTR, BT_UINT)
333 DEF_FUNCTION_TYPE_2 (BT_FN_LONG_PTR_LONG,
334                      BT_LONG, BT_PTR, BT_LONG)
335 DEF_FUNCTION_TYPE_2 (BT_FN_ULONG_PTR_ULONG,
336                      BT_ULONG, BT_PTR, BT_ULONG)
337 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTRMODE_PTR,
338                      BT_VOID, BT_PTRMODE, BT_PTR)
339 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_PTRMODE,
340                      BT_VOID, BT_PTR, BT_PTRMODE)
341 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT8_UINT8,
342                      BT_VOID, BT_UINT8, BT_UINT8)
343 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT16_UINT16,
344                      BT_VOID, BT_UINT16, BT_UINT16)
345 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT32_UINT32,
346                      BT_VOID, BT_UINT32, BT_UINT32)
347 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT64_UINT64,
348                      BT_VOID, BT_UINT64, BT_UINT64)
349 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_FLOAT_FLOAT,
350                      BT_VOID, BT_FLOAT, BT_FLOAT)
351 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_DOUBLE_DOUBLE,
352                      BT_VOID, BT_DOUBLE, BT_DOUBLE)
353 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT64_PTR,
354                      BT_VOID, BT_UINT64, BT_PTR)
355 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VALIST_REF_VALIST_ARG,
356                      BT_VOID, BT_VALIST_REF, BT_VALIST_ARG)
357 DEF_FUNCTION_TYPE_2 (BT_FN_LONG_LONG_LONG,
358                      BT_LONG, BT_LONG, BT_LONG)
359 DEF_FUNCTION_TYPE_2 (BT_FN_UINT8_UINT8_UINT8,
360                      BT_UINT8, BT_UINT8, BT_UINT8)
361 DEF_FUNCTION_TYPE_2 (BT_FN_INT8_INT8_INT8,
362                      BT_INT8, BT_INT8, BT_INT8)
363 DEF_FUNCTION_TYPE_2 (BT_FN_INT16_INT16_INT16,
364                      BT_INT16, BT_INT16, BT_INT16)
365 DEF_FUNCTION_TYPE_2 (BT_FN_INT_INT_INT,
366                      BT_INT, BT_INT, BT_INT)
367 DEF_FUNCTION_TYPE_2 (BT_FN_UINT_FLOAT_UINT,
368                      BT_UINT, BT_FLOAT, BT_UINT)
369 DEF_FUNCTION_TYPE_2 (BT_FN_UINT_DOUBLE_UINT,
370                      BT_UINT, BT_DOUBLE, BT_UINT)
371 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_UINT_UINT,
372                      BT_FLOAT, BT_UINT, BT_UINT)
373 DEF_FUNCTION_TYPE_2 (BT_FN_ULONG_UINT_UINT,
374                      BT_ULONG, BT_UINT, BT_UINT)
375 DEF_FUNCTION_TYPE_2 (BT_FN_ULONG_UINT_PTR,
376                      BT_ULONG, BT_UINT, BT_PTR)
377 DEF_FUNCTION_TYPE_2 (BT_FN_ULONG_ULONG_ULONG,
378                      BT_ULONG, BT_ULONG, BT_ULONG)
379 DEF_FUNCTION_TYPE_2 (BT_FN_UINT_UINT_UINT,
380                      BT_UINT, BT_UINT, BT_UINT)
381 DEF_FUNCTION_TYPE_2 (BT_FN_INT_PTR_CONST_STRING,
382                      BT_INT, BT_PTR, BT_CONST_STRING)
383 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_SIZE,
384                      BT_VOID, BT_PTR, BT_SIZE)
385 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT_PTR,
386                      BT_VOID, BT_UINT, BT_PTR)
387 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOAT,
388                      BT_FLOAT, BT_FLOAT, BT_FLOAT)
389 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLE,
390                      BT_DOUBLE, BT_DOUBLE, BT_DOUBLE)
391 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE,
392                      BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE)
393 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT16_FLOAT16_FLOAT16,
394                      BT_FLOAT16, BT_FLOAT16, BT_FLOAT16)
395 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT32_FLOAT32_FLOAT32,
396                      BT_FLOAT32, BT_FLOAT32, BT_FLOAT32)
397 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT64_FLOAT64_FLOAT64,
398                      BT_FLOAT64, BT_FLOAT64, BT_FLOAT64)
399 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT128_FLOAT128_FLOAT128,
400                      BT_FLOAT128, BT_FLOAT128, BT_FLOAT128)
401 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT32X_FLOAT32X_FLOAT32X,
402                      BT_FLOAT32X, BT_FLOAT32X, BT_FLOAT32X)
403 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT64X_FLOAT64X_FLOAT64X,
404                      BT_FLOAT64X, BT_FLOAT64X, BT_FLOAT64X)
405 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT128X_FLOAT128X_FLOAT128X,
406                      BT_FLOAT128X, BT_FLOAT128X, BT_FLOAT128X)
407 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOATPTR,
408                      BT_FLOAT, BT_FLOAT, BT_FLOAT_PTR)
409 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
410                      BT_DOUBLE, BT_DOUBLE, BT_DOUBLE_PTR)
411 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
412                      BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR)
413 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONGDOUBLE,
414                      BT_FLOAT, BT_FLOAT, BT_LONGDOUBLE)
415 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
416                      BT_DOUBLE, BT_DOUBLE, BT_LONGDOUBLE)
417 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INT,
418                      BT_FLOAT, BT_FLOAT, BT_INT)
419 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INT,
420                      BT_DOUBLE, BT_DOUBLE, BT_INT)
421 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INT,
422                      BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT)
423 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INTPTR,
424                      BT_FLOAT, BT_FLOAT, BT_INT_PTR)
425 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INTPTR,
426                      BT_DOUBLE, BT_DOUBLE, BT_INT_PTR)
427 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
428                      BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR)
429 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_INT_FLOAT,
430                      BT_FLOAT, BT_INT, BT_FLOAT)
431 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_INT_DOUBLE,
432                      BT_DOUBLE, BT_INT, BT_DOUBLE)
433 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_INT_LONGDOUBLE,
434                      BT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE)
435 DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONG,
436                      BT_FLOAT, BT_FLOAT, BT_LONG)
437 DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONG,
438                      BT_DOUBLE, BT_DOUBLE, BT_LONG)
439 DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
440                      BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONG)
441 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_VALIST_ARG,
442                      BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
443 DEF_FUNCTION_TYPE_2 (BT_FN_PTR_SIZE_SIZE,
444                      BT_PTR, BT_SIZE, BT_SIZE)
445 DEF_FUNCTION_TYPE_2 (BT_FN_PTR_PTR_SIZE,
446                      BT_PTR, BT_PTR, BT_SIZE)
447 DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT,
448                      BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT)
449 DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
450                      BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE)
451 DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
452                      BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
453 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_PTR, BT_VOID, BT_PTR, BT_PTR)
454 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_PTR_CONST_STRING,
455                      BT_INT, BT_CONST_STRING, BT_PTR_CONST_STRING)
456 DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_PTR_INT, BT_SIZE, BT_CONST_PTR, BT_INT)
457 DEF_FUNCTION_TYPE_2 (BT_FN_I1_VPTR_I1, BT_I1, BT_VOLATILE_PTR, BT_I1)
458 DEF_FUNCTION_TYPE_2 (BT_FN_I2_VPTR_I2, BT_I2, BT_VOLATILE_PTR, BT_I2)
459 DEF_FUNCTION_TYPE_2 (BT_FN_I4_VPTR_I4, BT_I4, BT_VOLATILE_PTR, BT_I4)
460 DEF_FUNCTION_TYPE_2 (BT_FN_I8_VPTR_I8, BT_I8, BT_VOLATILE_PTR, BT_I8)
461 DEF_FUNCTION_TYPE_2 (BT_FN_I16_VPTR_I16, BT_I16, BT_VOLATILE_PTR, BT_I16)
462 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_LONGPTR_LONGPTR,
463                      BT_BOOL, BT_PTR_LONG, BT_PTR_LONG)
464 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR,
465                      BT_BOOL, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG)
466 DEF_FUNCTION_TYPE_2 (BT_FN_I1_CONST_VPTR_INT, BT_I1, BT_CONST_VOLATILE_PTR,
467                      BT_INT)
468 DEF_FUNCTION_TYPE_2 (BT_FN_I2_CONST_VPTR_INT, BT_I2, BT_CONST_VOLATILE_PTR,
469                      BT_INT)
470 DEF_FUNCTION_TYPE_2 (BT_FN_I4_CONST_VPTR_INT, BT_I4, BT_CONST_VOLATILE_PTR,
471                      BT_INT)
472 DEF_FUNCTION_TYPE_2 (BT_FN_I8_CONST_VPTR_INT, BT_I8, BT_CONST_VOLATILE_PTR,
473                      BT_INT)
474 DEF_FUNCTION_TYPE_2 (BT_FN_I16_CONST_VPTR_INT, BT_I16, BT_CONST_VOLATILE_PTR,
475                      BT_INT)
476 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_INT, BT_VOID, BT_VOLATILE_PTR, BT_INT)
477 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_VPTR_INT, BT_BOOL, BT_VOLATILE_PTR, BT_INT)
478 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_SIZE_CONST_VPTR, BT_BOOL, BT_SIZE,
479                      BT_CONST_VOLATILE_PTR)
480 DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_INT_BOOL, BT_BOOL, BT_INT, BT_BOOL)
481 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT_UINT, BT_VOID, BT_UINT, BT_UINT)
482 DEF_FUNCTION_TYPE_2 (BT_FN_UINT_UINT_PTR, BT_UINT, BT_UINT, BT_PTR)
483 DEF_FUNCTION_TYPE_2 (BT_FN_PTR_CONST_PTR_SIZE, BT_PTR, BT_CONST_PTR, BT_SIZE)
484 DEF_FUNCTION_TYPE_2 (BT_FN_PTR_CONST_PTR_CONST_PTR, BT_PTR, BT_CONST_PTR, BT_CONST_PTR)
485 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTRPTR_CONST_PTR, BT_VOID, BT_PTR_PTR, BT_CONST_PTR)
486 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_CONST_PTR_SIZE, BT_VOID, BT_CONST_PTR, BT_SIZE)
487 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_BND, BT_VOID, BT_PTR, BT_BND)
488 DEF_FUNCTION_TYPE_2 (BT_FN_CONST_PTR_CONST_PTR_CONST_PTR, BT_CONST_PTR, BT_CONST_PTR, BT_CONST_PTR)
489 DEF_FUNCTION_TYPE_2 (BT_FN_BND_CONST_PTR_SIZE, BT_BND, BT_CONST_PTR, BT_SIZE)
490 DEF_FUNCTION_TYPE_2 (BT_FN_UINT32_UINT64_PTR,
491                      BT_UINT32, BT_UINT64, BT_PTR)
492 DEF_FUNCTION_TYPE_2 (BT_FN_INT_FEXCEPT_T_PTR_INT, BT_INT, BT_FEXCEPT_T_PTR,
493                      BT_INT)
494 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_FEXCEPT_T_PTR_INT, BT_INT,
495                      BT_CONST_FEXCEPT_T_PTR, BT_INT)
496
497 DEF_POINTER_TYPE (BT_PTR_FN_VOID_PTR_PTR, BT_FN_VOID_PTR_PTR)
498
499 DEF_FUNCTION_TYPE_3 (BT_FN_STRING_STRING_CONST_STRING_SIZE,
500                      BT_STRING, BT_STRING, BT_CONST_STRING, BT_SIZE)
501 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_SIZE,
502                      BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_SIZE)
503 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_CONST_PTR_SIZE,
504                      BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE)
505 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_CONST_PTR_SIZE,
506                      BT_VOID, BT_PTR, BT_CONST_PTR, BT_SIZE)
507 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_PTR_CONST_PTR_SIZE,
508                      BT_INT, BT_CONST_PTR, BT_CONST_PTR, BT_SIZE)
509 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_INT_SIZE,
510                      BT_PTR, BT_PTR, BT_INT, BT_SIZE)
511 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_SIZE,
512                      BT_VOID, BT_PTR, BT_INT, BT_SIZE)
513 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_INT,
514                      BT_VOID, BT_PTR, BT_INT, BT_INT)
515 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_CONST_PTR_PTR_SIZE,
516                      BT_VOID, BT_CONST_PTR, BT_PTR, BT_SIZE)
517 DEF_FUNCTION_TYPE_3 (BT_FN_INT_STRING_CONST_STRING_VALIST_ARG,
518                      BT_INT, BT_STRING, BT_CONST_STRING, BT_VALIST_ARG)
519 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG,
520                      BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_VALIST_ARG)
521 DEF_FUNCTION_TYPE_3 (BT_FN_INT_FILEPTR_CONST_STRING_VALIST_ARG,
522                      BT_INT, BT_FILEPTR, BT_CONST_STRING, BT_VALIST_ARG)
523 DEF_FUNCTION_TYPE_3 (BT_FN_INT_INT_UINT_UINT,
524                      BT_INT, BT_INT, BT_UINT, BT_UINT)
525 DEF_FUNCTION_TYPE_3 (BT_FN_UINT_UINT_UINT_UINT,
526                      BT_UINT, BT_UINT, BT_UINT, BT_UINT)
527 DEF_FUNCTION_TYPE_3 (BT_FN_UINT_UINT_UINT_PTR,
528                      BT_UINT, BT_UINT, BT_UINT, BT_PTR)
529 DEF_FUNCTION_TYPE_3 (BT_FN_UINT_ULONG_ULONG_UINT,
530                      BT_UINT, BT_ULONG, BT_ULONG, BT_UINT)
531 DEF_FUNCTION_TYPE_3 (BT_FN_ULONG_ULONG_ULONG_ULONG,
532                      BT_ULONG, BT_ULONG, BT_ULONG, BT_ULONG)
533 DEF_FUNCTION_TYPE_3 (BT_FN_LONG_LONG_UINT_UINT,
534                      BT_LONG, BT_LONG, BT_UINT, BT_UINT)
535 DEF_FUNCTION_TYPE_3 (BT_FN_ULONG_ULONG_UINT_UINT,
536                      BT_ULONG, BT_ULONG, BT_UINT, BT_UINT)
537 DEF_FUNCTION_TYPE_3 (BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
538                      BT_STRING, BT_CONST_STRING, BT_CONST_STRING, BT_INT)
539 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_FLOAT,
540                      BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_FLOAT)
541 DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
542                      BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_DOUBLE)
543 DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE,
544                      BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE)
545 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT16_FLOAT16_FLOAT16_FLOAT16,
546                      BT_FLOAT16, BT_FLOAT16, BT_FLOAT16, BT_FLOAT16)
547 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT32_FLOAT32_FLOAT32_FLOAT32,
548                      BT_FLOAT32, BT_FLOAT32, BT_FLOAT32, BT_FLOAT32)
549 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT64_FLOAT64_FLOAT64_FLOAT64,
550                      BT_FLOAT64, BT_FLOAT64, BT_FLOAT64, BT_FLOAT64)
551 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT128_FLOAT128_FLOAT128_FLOAT128,
552                      BT_FLOAT128, BT_FLOAT128, BT_FLOAT128, BT_FLOAT128)
553 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT32X_FLOAT32X_FLOAT32X_FLOAT32X,
554                      BT_FLOAT32X, BT_FLOAT32X, BT_FLOAT32X, BT_FLOAT32X)
555 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT64X_FLOAT64X_FLOAT64X_FLOAT64X,
556                      BT_FLOAT64X, BT_FLOAT64X, BT_FLOAT64X, BT_FLOAT64X)
557 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT128X_FLOAT128X_FLOAT128X_FLOAT128X,
558                      BT_FLOAT128X, BT_FLOAT128X, BT_FLOAT128X, BT_FLOAT128X)
559 DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_INTPTR,
560                      BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_INT_PTR)
561 DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
562                      BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_INT_PTR)
563 DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
564                      BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR)
565 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
566                      BT_VOID, BT_FLOAT, BT_FLOAT_PTR, BT_FLOAT_PTR)
567 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
568                      BT_VOID, BT_DOUBLE, BT_DOUBLE_PTR, BT_DOUBLE_PTR)
569 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR,
570                      BT_VOID, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR, BT_LONGDOUBLE_PTR)
571 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_PTR_PTR, BT_VOID, BT_PTR, BT_PTR, BT_PTR)
572 DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_PTR_CONST_STRING_PTR_CONST_STRING,
573                      BT_INT, BT_CONST_STRING, BT_PTR_CONST_STRING, BT_PTR_CONST_STRING)
574 DEF_FUNCTION_TYPE_3 (BT_FN_INT_INT_CONST_STRING_VALIST_ARG,
575                      BT_INT, BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
576 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I1_I1, BT_BOOL, BT_VOLATILE_PTR,
577                      BT_I1, BT_I1)
578 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I2_I2, BT_BOOL, BT_VOLATILE_PTR,
579                      BT_I2, BT_I2)
580 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I4_I4, BT_BOOL, BT_VOLATILE_PTR,
581                      BT_I4, BT_I4)
582 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I8_I8, BT_BOOL, BT_VOLATILE_PTR,
583                      BT_I8, BT_I8)
584 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I16_I16, BT_BOOL, BT_VOLATILE_PTR,
585                      BT_I16, BT_I16)
586 DEF_FUNCTION_TYPE_3 (BT_FN_I1_VPTR_I1_I1, BT_I1, BT_VOLATILE_PTR, BT_I1, BT_I1)
587 DEF_FUNCTION_TYPE_3 (BT_FN_I2_VPTR_I2_I2, BT_I2, BT_VOLATILE_PTR, BT_I2, BT_I2)
588 DEF_FUNCTION_TYPE_3 (BT_FN_I4_VPTR_I4_I4, BT_I4, BT_VOLATILE_PTR, BT_I4, BT_I4)
589 DEF_FUNCTION_TYPE_3 (BT_FN_I8_VPTR_I8_I8, BT_I8, BT_VOLATILE_PTR, BT_I8, BT_I8)
590 DEF_FUNCTION_TYPE_3 (BT_FN_I16_VPTR_I16_I16, BT_I16, BT_VOLATILE_PTR,
591                      BT_I16, BT_I16)
592 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_CONST_PTR_INT_SIZE, BT_PTR,
593                      BT_CONST_PTR, BT_INT, BT_SIZE)
594 DEF_FUNCTION_TYPE_3 (BT_FN_I1_VPTR_I1_INT, BT_I1, BT_VOLATILE_PTR, BT_I1, BT_INT)
595 DEF_FUNCTION_TYPE_3 (BT_FN_I2_VPTR_I2_INT, BT_I2, BT_VOLATILE_PTR, BT_I2, BT_INT)
596 DEF_FUNCTION_TYPE_3 (BT_FN_I4_VPTR_I4_INT, BT_I4, BT_VOLATILE_PTR, BT_I4, BT_INT)
597 DEF_FUNCTION_TYPE_3 (BT_FN_I8_VPTR_I8_INT, BT_I8, BT_VOLATILE_PTR, BT_I8, BT_INT)
598 DEF_FUNCTION_TYPE_3 (BT_FN_I16_VPTR_I16_INT, BT_I16, BT_VOLATILE_PTR, BT_I16, BT_INT)
599 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I1_INT, BT_VOID, BT_VOLATILE_PTR, BT_I1, BT_INT)
600 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I2_INT, BT_VOID, BT_VOLATILE_PTR, BT_I2, BT_INT)
601 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I4_INT, BT_VOID, BT_VOLATILE_PTR, BT_I4, BT_INT)
602 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I8_INT, BT_VOID, BT_VOLATILE_PTR, BT_I8, BT_INT)
603 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I16_INT, BT_VOID, BT_VOLATILE_PTR, BT_I16, BT_INT)
604 DEF_FUNCTION_TYPE_3 (BT_FN_INT_PTRPTR_SIZE_SIZE, BT_INT, BT_PTR_PTR, BT_SIZE, BT_SIZE)
605 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_CONST_PTR_CONST_PTR_SIZE, BT_PTR, BT_CONST_PTR, BT_CONST_PTR, BT_SIZE)
606 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_CONST_PTR_BND_CONST_PTR, BT_VOID, BT_CONST_PTR, BT_BND, BT_CONST_PTR)
607 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_INT_INT_INTPTR, BT_BOOL, BT_INT, BT_INT,
608                      BT_INT_PTR)
609 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_LONG_LONG_LONGPTR, BT_BOOL, BT_LONG, BT_LONG,
610                      BT_PTR_LONG)
611 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_LONGLONG_LONGLONG_LONGLONGPTR, BT_BOOL,
612                      BT_LONGLONG, BT_LONGLONG, BT_PTR_LONGLONG)
613 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_UINT_UINT_UINTPTR, BT_BOOL, BT_UINT, BT_UINT,
614                      BT_PTR_UINT)
615 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_ULONG_ULONG_ULONGPTR, BT_BOOL, BT_ULONG,
616                      BT_ULONG, BT_PTR_ULONG)
617 DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_ULONGLONG_ULONGLONG_ULONGLONGPTR, BT_BOOL,
618                      BT_ULONGLONG, BT_ULONGLONG, BT_PTR_ULONGLONG)
619 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_UINT32_UINT64_PTR,
620                      BT_VOID, BT_UINT32, BT_UINT64, BT_PTR)
621 DEF_FUNCTION_TYPE_3 (BT_FN_VOID_UINT32_UINT32_PTR,
622                      BT_VOID, BT_UINT32, BT_UINT32, BT_PTR)
623
624 DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_CONST_PTR_SIZE_SIZE_FILEPTR,
625                      BT_SIZE, BT_CONST_PTR, BT_SIZE, BT_SIZE, BT_FILEPTR)
626 DEF_FUNCTION_TYPE_4 (BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG,
627                 BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_VALIST_ARG)
628 DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_TM_PTR,
629                 BT_SIZE, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_CONST_TM_PTR)
630 DEF_FUNCTION_TYPE_4 (BT_FN_PTR_PTR_CONST_PTR_SIZE_SIZE,
631                      BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE, BT_SIZE)
632 DEF_FUNCTION_TYPE_4 (BT_FN_PTR_PTR_INT_SIZE_SIZE,
633                      BT_PTR, BT_PTR, BT_INT, BT_SIZE, BT_SIZE)
634 DEF_FUNCTION_TYPE_4 (BT_FN_UINT_UINT_UINT_UINT_UINT,
635                      BT_UINT, BT_UINT, BT_UINT, BT_UINT, BT_UINT)
636 DEF_FUNCTION_TYPE_4 (BT_FN_UINT_FLOAT_FLOAT_FLOAT_FLOAT,
637                      BT_UINT, BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_FLOAT)
638 DEF_FUNCTION_TYPE_4 (BT_FN_ULONG_ULONG_ULONG_UINT_UINT,
639                      BT_ULONG, BT_ULONG, BT_ULONG, BT_UINT, BT_UINT)
640 DEF_FUNCTION_TYPE_4 (BT_FN_STRING_STRING_CONST_STRING_SIZE_SIZE,
641                      BT_STRING, BT_STRING, BT_CONST_STRING, BT_SIZE, BT_SIZE)
642 DEF_FUNCTION_TYPE_4 (BT_FN_INT_FILEPTR_INT_CONST_STRING_VALIST_ARG,
643                      BT_INT, BT_FILEPTR, BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
644 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_OMPFN_PTR_UINT_UINT,
645                      BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, BT_UINT)
646 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_PTR_WORD_WORD_PTR,
647                      BT_VOID, BT_PTR, BT_WORD, BT_WORD, BT_PTR)
648 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_SIZE_VPTR_PTR_INT, BT_VOID, BT_SIZE,
649                      BT_VOLATILE_PTR, BT_PTR, BT_INT)
650 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_SIZE_CONST_VPTR_PTR_INT, BT_VOID, BT_SIZE,
651                      BT_CONST_VOLATILE_PTR, BT_PTR, BT_INT)
652 DEF_FUNCTION_TYPE_4 (BT_FN_BOOL_UINT_LONGPTR_LONGPTR_LONGPTR,
653                      BT_BOOL, BT_UINT, BT_PTR_LONG, BT_PTR_LONG, BT_PTR_LONG)
654 DEF_FUNCTION_TYPE_4 (BT_FN_BOOL_UINT_ULLPTR_ULLPTR_ULLPTR,
655                      BT_BOOL, BT_UINT, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG,
656                      BT_PTR_ULONGLONG)
657 DEF_FUNCTION_TYPE_4 (BT_FN_VOID_UINT_PTR_INT_PTR, BT_VOID, BT_INT, BT_PTR,
658                      BT_INT, BT_PTR)
659
660 DEF_FUNCTION_TYPE_5 (BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VALIST_ARG,
661                      BT_INT, BT_STRING, BT_INT, BT_SIZE, BT_CONST_STRING,
662                      BT_VALIST_ARG)
663 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR,
664                      BT_BOOL, BT_LONG, BT_LONG, BT_LONG,
665                      BT_PTR_LONG, BT_PTR_LONG)
666 DEF_FUNCTION_TYPE_5 (BT_FN_VOID_SIZE_VPTR_PTR_PTR_INT, BT_VOID, BT_SIZE,
667                      BT_VOLATILE_PTR, BT_PTR, BT_PTR, BT_INT)
668 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I1_INT_INT,
669                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I1, BT_INT, BT_INT)
670 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I2_INT_INT,
671                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I2, BT_INT, BT_INT)
672 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I4_INT_INT,
673                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I4, BT_INT, BT_INT)
674 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I8_INT_INT,
675                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I8, BT_INT, BT_INT)
676 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I16_INT_INT,
677                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I16, BT_INT, BT_INT)
678 DEF_FUNCTION_TYPE_5 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR,
679                      BT_VOID, BT_INT, BT_SIZE, BT_PTR, BT_PTR, BT_PTR)
680 DEF_FUNCTION_TYPE_5 (BT_FN_VOID_OMPFN_PTR_UINT_UINT_UINT,
681                      BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, BT_UINT,
682                      BT_UINT)
683 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_UINT_LONGPTR_LONG_LONGPTR_LONGPTR,
684                      BT_BOOL, BT_UINT, BT_PTR_LONG, BT_LONG, BT_PTR_LONG,
685                      BT_PTR_LONG)
686 DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_UINT_ULLPTR_ULL_ULLPTR_ULLPTR,
687                      BT_BOOL, BT_UINT, BT_PTR_ULONGLONG, BT_ULONGLONG,
688                      BT_PTR_ULONGLONG, BT_PTR_ULONGLONG)
689
690 DEF_FUNCTION_TYPE_6 (BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VALIST_ARG,
691                      BT_INT, BT_STRING, BT_SIZE, BT_INT, BT_SIZE,
692                      BT_CONST_STRING, BT_VALIST_ARG)
693 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR,
694                      BT_BOOL, BT_LONG, BT_LONG, BT_LONG, BT_LONG,
695                      BT_PTR_LONG, BT_PTR_LONG)
696 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR,
697                      BT_BOOL, BT_BOOL, BT_ULONGLONG, BT_ULONGLONG,
698                      BT_ULONGLONG, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG)
699 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I1_BOOL_INT_INT, 
700                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I1, BT_BOOL, BT_INT,
701                      BT_INT)
702 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I2_BOOL_INT_INT, 
703                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I2, BT_BOOL, BT_INT,
704                      BT_INT)
705 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I4_BOOL_INT_INT, 
706                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I4, BT_BOOL, BT_INT,
707                      BT_INT)
708 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I8_BOOL_INT_INT, 
709                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I8, BT_BOOL, BT_INT,
710                      BT_INT)
711 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I16_BOOL_INT_INT, 
712                      BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I16, BT_BOOL, BT_INT,
713                      BT_INT)
714 DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_SIZE_VPTR_PTR_PTR_INT_INT, BT_BOOL, BT_SIZE,
715                      BT_VOLATILE_PTR, BT_PTR, BT_PTR, BT_INT, BT_INT)
716
717 DEF_FUNCTION_TYPE_7 (BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_UINT,
718                      BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT,
719                      BT_LONG, BT_LONG, BT_LONG, BT_UINT)
720 DEF_FUNCTION_TYPE_7 (BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR,
721                      BT_BOOL, BT_BOOL, BT_ULONGLONG, BT_ULONGLONG,
722                      BT_ULONGLONG, BT_ULONGLONG,
723                      BT_PTR_ULONGLONG, BT_PTR_ULONGLONG)
724 DEF_FUNCTION_TYPE_7 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_UINT_PTR,
725                      BT_VOID, BT_INT, BT_SIZE, BT_PTR, BT_PTR, BT_PTR, BT_UINT,
726                      BT_PTR)
727
728 DEF_FUNCTION_TYPE_8 (BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT,
729                      BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT,
730                      BT_LONG, BT_LONG, BT_LONG, BT_LONG, BT_UINT)
731
732 DEF_FUNCTION_TYPE_9 (BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR_INT,
733                      BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR,
734                      BT_PTR_FN_VOID_PTR_PTR, BT_LONG, BT_LONG,
735                      BT_BOOL, BT_UINT, BT_PTR, BT_INT)
736 DEF_FUNCTION_TYPE_9 (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR,
737                      BT_VOID, BT_INT, BT_PTR_FN_VOID_PTR, BT_SIZE, BT_PTR,
738                      BT_PTR, BT_PTR, BT_UINT, BT_PTR, BT_PTR)
739
740 DEF_FUNCTION_TYPE_11 (BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_LONG_LONG_LONG,
741                       BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR,
742                       BT_PTR_FN_VOID_PTR_PTR, BT_LONG, BT_LONG,
743                       BT_UINT, BT_LONG, BT_INT, BT_LONG, BT_LONG, BT_LONG)
744 DEF_FUNCTION_TYPE_11 (BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_ULL_ULL_ULL,
745                       BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR,
746                       BT_PTR_FN_VOID_PTR_PTR, BT_LONG, BT_LONG,
747                       BT_UINT, BT_LONG, BT_INT,
748                       BT_ULONGLONG, BT_ULONGLONG, BT_ULONGLONG)
749
750 DEF_FUNCTION_TYPE_VAR_0 (BT_FN_VOID_VAR, BT_VOID)
751 DEF_FUNCTION_TYPE_VAR_0 (BT_FN_INT_VAR, BT_INT)
752 DEF_FUNCTION_TYPE_VAR_0 (BT_FN_PTR_VAR, BT_PTR)
753 DEF_FUNCTION_TYPE_VAR_0 (BT_FN_BOOL_VAR, BT_BOOL)
754
755 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_VALIST_REF_VAR,
756                          BT_VOID, BT_VALIST_REF)
757 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_CONST_PTR_VAR,
758                          BT_VOID, BT_CONST_PTR)
759 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_INT_CONST_STRING_VAR,
760                          BT_INT, BT_CONST_STRING)
761 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_UINT32_UINT32_VAR,
762                          BT_UINT32, BT_UINT32)
763 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_LONG_VAR,
764                          BT_VOID, BT_LONG)
765 DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_ULL_VAR,
766                          BT_VOID, BT_ULONGLONG)
767
768 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_FILEPTR_CONST_STRING_VAR,
769                          BT_INT, BT_FILEPTR, BT_CONST_STRING)
770 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_STRING_CONST_STRING_VAR,
771                          BT_INT, BT_STRING, BT_CONST_STRING)
772 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_CONST_STRING_CONST_STRING_VAR,
773                          BT_INT, BT_CONST_STRING, BT_CONST_STRING)
774 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_INT_CONST_STRING_VAR,
775                          BT_INT, BT_INT, BT_CONST_STRING)
776 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_PTR_CONST_PTR_SIZE_VAR, BT_PTR,
777                          BT_CONST_PTR, BT_SIZE)
778 DEF_FUNCTION_TYPE_VAR_2 (BT_FN_VOID_INT_INT_VAR, BT_VOID,
779                          BT_INT, BT_INT)
780
781 DEF_FUNCTION_TYPE_VAR_3 (BT_FN_INT_STRING_SIZE_CONST_STRING_VAR,
782                          BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING)
783 DEF_FUNCTION_TYPE_VAR_3 (BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR,
784                          BT_SSIZE, BT_STRING, BT_SIZE, BT_CONST_STRING)
785 DEF_FUNCTION_TYPE_VAR_3 (BT_FN_INT_FILEPTR_INT_CONST_STRING_VAR,
786                          BT_INT, BT_FILEPTR, BT_INT, BT_CONST_STRING)
787
788 DEF_FUNCTION_TYPE_VAR_4 (BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VAR,
789                          BT_INT, BT_STRING, BT_INT, BT_SIZE, BT_CONST_STRING)
790
791 DEF_FUNCTION_TYPE_VAR_5 (BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VAR,
792                          BT_INT, BT_STRING, BT_SIZE, BT_INT, BT_SIZE,
793                          BT_CONST_STRING)
794
795 DEF_FUNCTION_TYPE_VAR_5 (BT_FN_INT_INT_INT_INT_INT_INT_VAR,
796                          BT_INT, BT_INT, BT_INT, BT_INT, BT_INT, BT_INT)
797
798 DEF_FUNCTION_TYPE_VAR_6 (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_VAR,
799                          BT_VOID, BT_INT, BT_PTR_FN_VOID_PTR, BT_SIZE,
800                          BT_PTR, BT_PTR, BT_PTR)
801
802 DEF_FUNCTION_TYPE_VAR_7 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR,
803                          BT_VOID, BT_INT, BT_SIZE, BT_PTR, BT_PTR,
804                          BT_PTR, BT_INT, BT_INT)
805
806 DEF_POINTER_TYPE (BT_PTR_FN_VOID_VAR, BT_FN_VOID_VAR)
807 DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_FN_VOID_VAR_PTR_SIZE,
808                      BT_PTR, BT_PTR_FN_VOID_VAR, BT_PTR, BT_SIZE)
809
810
811 DEF_FUNCTION_TYPE_1 (BT_FN_I1_VPTR, BT_I1, BT_VOLATILE_PTR)
812 DEF_FUNCTION_TYPE_1 (BT_FN_I2_VPTR, BT_I2, BT_VOLATILE_PTR)
813 DEF_FUNCTION_TYPE_1 (BT_FN_I4_VPTR, BT_I4, BT_VOLATILE_PTR)
814 DEF_FUNCTION_TYPE_1 (BT_FN_I8_VPTR, BT_I8, BT_VOLATILE_PTR)
815 DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_VPTR, BT_FLOAT, BT_VOLATILE_PTR)
816 DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_DOUBLE_PTR, BT_DOUBLE, BT_DOUBLE_PTR)
817 DEF_FUNCTION_TYPE_1 (BT_FN_LDOUBLE_VPTR, BT_LONGDOUBLE, BT_VOLATILE_PTR)
818
819 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I1, BT_VOID, BT_VOLATILE_PTR, BT_I1)
820 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I2, BT_VOID, BT_VOLATILE_PTR, BT_I2)
821 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I4, BT_VOID, BT_VOLATILE_PTR, BT_I4)
822 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I8, BT_VOID, BT_VOLATILE_PTR, BT_I8)
823 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_FLOAT, BT_VOID, BT_VOLATILE_PTR, BT_FLOAT)
824 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_DOUBLE, BT_VOID,
825                      BT_VOLATILE_PTR, BT_DOUBLE)
826 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_LDOUBLE, BT_VOID,
827                      BT_VOLATILE_PTR, BT_LONGDOUBLE)
828 DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_SIZE, BT_VOID,
829                      BT_VOLATILE_PTR, BT_SIZE)