blob: 5553ab0243fbb04fd98b1cef7986c3663e73b518 [file] [log] [blame]
Richard Hendersonc02c3412016-03-03 13:51:44 -08001#define LIBFFI_ASM
2#define LIBFFI_H
3#include <fficonfig.h>
4#include <ffitarget.h>
5
6/* These version numbers correspond to the libtool-version abi numbers,
7 not to the libffi release numbers. */
8
9LIBFFI_BASE_7.0 {
10 global:
11 /* Exported data variables. */
12 ffi_type_void;
13 ffi_type_uint8;
14 ffi_type_sint8;
15 ffi_type_uint16;
16 ffi_type_sint16;
17 ffi_type_uint32;
18 ffi_type_sint32;
19 ffi_type_uint64;
20 ffi_type_sint64;
21 ffi_type_float;
22 ffi_type_double;
23 ffi_type_longdouble;
24 ffi_type_pointer;
25
26 /* Exported functions. */
27 ffi_call;
28 ffi_prep_cif;
29 ffi_prep_cif_var;
30
31 ffi_raw_call;
32 ffi_ptrarray_to_raw;
33 ffi_raw_to_ptrarray;
34 ffi_raw_size;
35
36 ffi_java_raw_call;
37 ffi_java_ptrarray_to_raw;
38 ffi_java_raw_to_ptrarray;
39 ffi_java_raw_size;
40
41 local:
42 *;
43};
44
Richard Henderson8a0a4e22016-05-04 07:33:41 -100045LIBFFI_BASE_7.1 {
46 global:
47 ffi_get_struct_offsets;
Richard Henderson33d9a312016-05-18 11:01:55 -070048} LIBFFI_BASE_7.0;
Richard Henderson8a0a4e22016-05-04 07:33:41 -100049
Richard Hendersonc02c3412016-03-03 13:51:44 -080050#ifdef FFI_TARGET_HAS_COMPLEX_TYPE
51LIBFFI_COMPLEX_7.0 {
52 global:
53 /* Exported data variables. */
54 ffi_type_complex_float;
55 ffi_type_complex_double;
56 ffi_type_complex_longdouble;
57} LIBFFI_BASE_7.0;
58#endif
59
60#if FFI_CLOSURES
61LIBFFI_CLOSURE_7.0 {
62 global:
63 ffi_closure_alloc;
64 ffi_closure_free;
65 ffi_prep_closure;
66 ffi_prep_closure_loc;
67 ffi_prep_raw_closure;
68 ffi_prep_raw_closure_loc;
69 ffi_prep_java_raw_closure;
70 ffi_prep_java_raw_closure_loc;
71} LIBFFI_BASE_7.0;
72#endif
73
74#if FFI_GO_CLOSURES
75LIBFFI_GO_CLOSURE_7.0 {
76 global:
77 ffi_call_go;
78 ffi_prep_go_closure;
79} LIBFFI_CLOSURE_7.0;
80#endif