]>
Commit | Line | Data |
---|---|---|
35485da9 | 1 | # Linker script for libgccjit.so |
8d9254fc | 2 | # Copyright (C) 2013-2020 Free Software Foundation, Inc. |
35485da9 DM |
3 | # Contributed by David Malcolm <dmalcolm@redhat.com>. |
4 | # | |
5 | # This file is part of GCC. | |
6 | # | |
7 | # GCC is free software; you can redistribute it and/or modify it | |
8 | # under the terms of the GNU General Public License as published by | |
9 | # the Free Software Foundation; either version 3, or (at your option) | |
10 | # any later version. | |
11 | # | |
12 | # GCC is distributed in the hope that it will be useful, but | |
13 | # WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
15 | # General Public License for more details. | |
16 | # | |
17 | # You should have received a copy of the GNU General Public License | |
18 | # along with GCC; see the file COPYING3. If not see | |
19 | # <http://www.gnu.org/licenses/>. */ | |
fa22c20d DM |
20 | |
21 | # The initial release of the library. | |
22 | LIBGCCJIT_ABI_0 | |
35485da9 DM |
23 | { |
24 | global: | |
25 | # Keep this list sorted alphabetically: | |
26 | gcc_jit_block_add_assignment; | |
27 | gcc_jit_block_add_assignment_op; | |
28 | gcc_jit_block_add_comment; | |
29 | gcc_jit_block_add_eval; | |
30 | gcc_jit_block_as_object; | |
31 | gcc_jit_block_end_with_conditional; | |
32 | gcc_jit_block_end_with_jump; | |
33 | gcc_jit_block_end_with_return; | |
34 | gcc_jit_block_end_with_void_return; | |
35 | gcc_jit_block_get_function; | |
36 | gcc_jit_context_acquire; | |
37 | gcc_jit_context_compile; | |
fdce7209 | 38 | gcc_jit_context_compile_to_file; |
35485da9 | 39 | gcc_jit_context_dump_to_file; |
86d0ac88 | 40 | gcc_jit_context_dump_reproducer_to_file; |
463366a0 | 41 | gcc_jit_context_enable_dump; |
35485da9 DM |
42 | gcc_jit_context_get_builtin_function; |
43 | gcc_jit_context_get_first_error; | |
303e1d56 | 44 | gcc_jit_context_get_last_error; |
35485da9 DM |
45 | gcc_jit_context_get_type; |
46 | gcc_jit_context_get_int_type; | |
47 | gcc_jit_context_new_array_access; | |
48 | gcc_jit_context_new_array_type; | |
49 | gcc_jit_context_new_binary_op; | |
50 | gcc_jit_context_new_call; | |
51 | gcc_jit_context_new_call_through_ptr; | |
52 | gcc_jit_context_new_cast; | |
53 | gcc_jit_context_new_child_context; | |
54 | gcc_jit_context_new_comparison; | |
55 | gcc_jit_context_new_field; | |
56 | gcc_jit_context_new_function; | |
57 | gcc_jit_context_new_function_ptr_type; | |
58 | gcc_jit_context_new_global; | |
59 | gcc_jit_context_new_location; | |
60 | gcc_jit_context_new_opaque_struct; | |
61 | gcc_jit_context_new_param; | |
62 | gcc_jit_context_new_rvalue_from_double; | |
63 | gcc_jit_context_new_rvalue_from_int; | |
ccce3b2a | 64 | gcc_jit_context_new_rvalue_from_long; |
35485da9 DM |
65 | gcc_jit_context_new_rvalue_from_ptr; |
66 | gcc_jit_context_new_string_literal; | |
67 | gcc_jit_context_new_struct_type; | |
68 | gcc_jit_context_new_unary_op; | |
69 | gcc_jit_context_new_union_type; | |
70 | gcc_jit_context_null; | |
71 | gcc_jit_context_one; | |
72 | gcc_jit_context_release; | |
73 | gcc_jit_context_set_bool_option; | |
74 | gcc_jit_context_set_int_option; | |
eb4c16eb | 75 | gcc_jit_context_set_logfile; |
35485da9 DM |
76 | gcc_jit_context_set_str_option; |
77 | gcc_jit_context_zero; | |
78 | gcc_jit_field_as_object; | |
79 | gcc_jit_function_as_object; | |
80 | gcc_jit_function_dump_to_dot; | |
81 | gcc_jit_function_get_param; | |
82 | gcc_jit_function_new_block; | |
83 | gcc_jit_function_new_local; | |
84 | gcc_jit_location_as_object; | |
85 | gcc_jit_lvalue_as_object; | |
86 | gcc_jit_lvalue_as_rvalue; | |
87 | gcc_jit_lvalue_access_field; | |
88 | gcc_jit_lvalue_get_address; | |
89 | gcc_jit_object_get_context; | |
90 | gcc_jit_object_get_debug_string; | |
91 | gcc_jit_param_as_lvalue; | |
92 | gcc_jit_param_as_object; | |
93 | gcc_jit_param_as_rvalue; | |
94 | gcc_jit_result_get_code; | |
791cfef8 | 95 | gcc_jit_result_get_global; |
35485da9 DM |
96 | gcc_jit_result_release; |
97 | gcc_jit_rvalue_access_field; | |
98 | gcc_jit_rvalue_as_object; | |
99 | gcc_jit_rvalue_dereference; | |
100 | gcc_jit_rvalue_dereference_field; | |
101 | gcc_jit_rvalue_get_type; | |
102 | gcc_jit_struct_as_type; | |
103 | gcc_jit_struct_set_fields; | |
104 | gcc_jit_type_as_object; | |
105 | gcc_jit_type_get_const; | |
106 | gcc_jit_type_get_pointer; | |
107 | gcc_jit_type_get_volatile; | |
108 | ||
109 | local: *; | |
fa22c20d DM |
110 | }; |
111 | ||
112 | # Add support for adding arbitrary command-line options (PR jit/66628). | |
113 | LIBGCCJIT_ABI_1 { | |
114 | global: | |
115 | gcc_jit_context_add_command_line_option; | |
116 | } LIBGCCJIT_ABI_0; | |
6a3603e3 DM |
117 | |
118 | # Add support for disabling the check for unreachable blocks (PR jit/66546). | |
119 | LIBGCCJIT_ABI_2 { | |
120 | global: | |
121 | gcc_jit_context_set_bool_allow_unreachable_blocks; | |
122 | } LIBGCCJIT_ABI_1; | |
ec5d0088 DM |
123 | |
124 | # Add support for switch statements. | |
125 | LIBGCCJIT_ABI_3 { | |
126 | global: | |
127 | gcc_jit_block_end_with_switch; | |
128 | gcc_jit_case_as_object; | |
129 | gcc_jit_context_new_case; | |
130 | } LIBGCCJIT_ABI_2; | |
afed3459 DM |
131 | |
132 | # Add timing API. | |
133 | LIBGCCJIT_ABI_4 { | |
134 | global: | |
135 | gcc_jit_context_get_timer; | |
136 | gcc_jit_context_set_timer; | |
137 | gcc_jit_timer_new; | |
138 | gcc_jit_timer_release; | |
139 | gcc_jit_timer_push; | |
140 | gcc_jit_timer_pop; | |
141 | gcc_jit_timer_print; | |
142 | }; | |
9376dd63 DM |
143 | |
144 | LIBGCCJIT_ABI_5 { | |
145 | global: | |
146 | gcc_jit_context_set_bool_use_external_driver; | |
147 | } LIBGCCJIT_ABI_4; | |
15c671a7 DM |
148 | |
149 | LIBGCCJIT_ABI_6 { | |
150 | global: | |
151 | gcc_jit_rvalue_set_bool_require_tail_call; | |
152 | } LIBGCCJIT_ABI_5; | |
0ebd1f00 DM |
153 | |
154 | LIBGCCJIT_ABI_7 { | |
155 | global: | |
156 | gcc_jit_type_get_aligned; | |
157 | } LIBGCCJIT_ABI_6; | |
47ee1b7c DM |
158 | |
159 | LIBGCCJIT_ABI_8 { | |
160 | global: | |
161 | gcc_jit_type_get_vector; | |
162 | } LIBGCCJIT_ABI_7; | |
15a65e63 DM |
163 | |
164 | LIBGCCJIT_ABI_9 { | |
165 | global: | |
166 | gcc_jit_function_get_address; | |
167 | } LIBGCCJIT_ABI_8; | |
6069fe72 DM |
168 | |
169 | LIBGCCJIT_ABI_10 { | |
170 | global: | |
171 | gcc_jit_context_new_rvalue_from_vector; | |
172 | } LIBGCCJIT_ABI_9; | |
216090cc AC |
173 | |
174 | LIBGCCJIT_ABI_11 { | |
175 | global: | |
176 | gcc_jit_context_add_driver_option; | |
ee118c14 AC |
177 | } LIBGCCJIT_ABI_10; |
178 | ||
179 | LIBGCCJIT_ABI_12 { | |
180 | global: | |
181 | gcc_jit_context_new_bitfield; | |
182 | } LIBGCCJIT_ABI_11; |