tree-optimization/112618 - unused .MASK_CALL
[official-gcc.git] / gcc / jit / libgccjit.map
blob8b90a0e2ff3d6ed4e9f70cde81a139b072ee7940
1 # Linker script for libgccjit.so
2 #   Copyright (C) 2013-2023 Free Software Foundation, Inc.
3 #   Contributed by David Malcolm <dmalcolm@redhat.com>.
5 # This file is part of GCC.
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.
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.
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/>.  */
21 # The initial release of the library.
22 LIBGCCJIT_ABI_0
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;
38     gcc_jit_context_compile_to_file;
39     gcc_jit_context_dump_to_file;
40     gcc_jit_context_dump_reproducer_to_file;
41     gcc_jit_context_enable_dump;
42     gcc_jit_context_get_builtin_function;
43     gcc_jit_context_get_first_error;
44     gcc_jit_context_get_last_error;
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;
64     gcc_jit_context_new_rvalue_from_long;
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;
75     gcc_jit_context_set_logfile;
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;
95     gcc_jit_result_get_global;
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;
109   local: *;
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;
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;
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;
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;
144 LIBGCCJIT_ABI_5 {
145   global:
146     gcc_jit_context_set_bool_use_external_driver;
147 } LIBGCCJIT_ABI_4;
149 LIBGCCJIT_ABI_6 {
150   global:
151     gcc_jit_rvalue_set_bool_require_tail_call;
152 } LIBGCCJIT_ABI_5;
154 LIBGCCJIT_ABI_7 {
155   global:
156     gcc_jit_type_get_aligned;
157 } LIBGCCJIT_ABI_6;
159 LIBGCCJIT_ABI_8 {
160   global:
161     gcc_jit_type_get_vector;
162 } LIBGCCJIT_ABI_7;
164 LIBGCCJIT_ABI_9 {
165   global:
166     gcc_jit_function_get_address;
167 } LIBGCCJIT_ABI_8;
169 LIBGCCJIT_ABI_10 {
170   global:
171     gcc_jit_context_new_rvalue_from_vector;
172 } LIBGCCJIT_ABI_9;
174 LIBGCCJIT_ABI_11 {
175   global:
176     gcc_jit_context_add_driver_option;
177 } LIBGCCJIT_ABI_10;
179 LIBGCCJIT_ABI_12 {
180   global:
181     gcc_jit_context_new_bitfield;
182 } LIBGCCJIT_ABI_11;
184 LIBGCCJIT_ABI_13 {
185   global:
186     gcc_jit_version_major;
187     gcc_jit_version_minor;
188     gcc_jit_version_patchlevel;
189 } LIBGCCJIT_ABI_12;
191 LIBGCCJIT_ABI_14 {
192   global:
193     gcc_jit_global_set_initializer;
194 } LIBGCCJIT_ABI_13;
196 LIBGCCJIT_ABI_15 {
197   global:
198     gcc_jit_block_add_extended_asm;
199     gcc_jit_block_end_with_extended_asm_goto;
200     gcc_jit_extended_asm_as_object;
201     gcc_jit_extended_asm_set_volatile_flag;
202     gcc_jit_extended_asm_set_inline_flag;
203     gcc_jit_extended_asm_add_output_operand;
204     gcc_jit_extended_asm_add_input_operand;
205     gcc_jit_extended_asm_add_clobber;
206     gcc_jit_context_add_top_level_asm;
207 } LIBGCCJIT_ABI_14;
209 LIBGCCJIT_ABI_16 {
210   global:
211     gcc_jit_function_get_return_type;
212     gcc_jit_function_get_param_count;
213     gcc_jit_function_type_get_return_type;
214     gcc_jit_function_type_get_param_count;
215     gcc_jit_function_type_get_param_type;
216     gcc_jit_type_unqualified;
217     gcc_jit_type_dyncast_array;
218     gcc_jit_type_is_bool;
219     gcc_jit_type_dyncast_function_ptr_type;
220     gcc_jit_type_is_integral;
221     gcc_jit_type_is_pointer;
222     gcc_jit_type_dyncast_vector;
223     gcc_jit_vector_type_get_element_type;
224     gcc_jit_vector_type_get_num_units;
225     gcc_jit_struct_get_field;
226     gcc_jit_type_is_struct;
227     gcc_jit_struct_get_field_count;
228 } LIBGCCJIT_ABI_15;
230 LIBGCCJIT_ABI_17 {
231   global:
232     gcc_jit_lvalue_set_tls_model;
233 } LIBGCCJIT_ABI_16;
235 LIBGCCJIT_ABI_18 {
236   global:
237     gcc_jit_lvalue_set_link_section;
238 } LIBGCCJIT_ABI_17;
240 LIBGCCJIT_ABI_19 {
241   global:
242     gcc_jit_context_new_array_constructor;
243     gcc_jit_context_new_struct_constructor;
244     gcc_jit_context_new_union_constructor;
245     gcc_jit_global_set_initializer_rvalue;
246 } LIBGCCJIT_ABI_18;
248 LIBGCCJIT_ABI_20 {
249   global:
250     gcc_jit_compatible_types;
251     gcc_jit_type_get_size;
252 } LIBGCCJIT_ABI_19;
254 LIBGCCJIT_ABI_21 {
255   global:
256     gcc_jit_context_new_bitcast;
257 } LIBGCCJIT_ABI_20;
259 LIBGCCJIT_ABI_22 {
260   global:
261     gcc_jit_lvalue_set_register_name;
262 } LIBGCCJIT_ABI_21;
264 LIBGCCJIT_ABI_23 {
265   global:
266     gcc_jit_context_set_bool_print_errors_to_stderr;
267 } LIBGCCJIT_ABI_22;
269 LIBGCCJIT_ABI_24 {
270   global:
271     gcc_jit_lvalue_set_alignment;
272     gcc_jit_lvalue_get_alignment;
273 } LIBGCCJIT_ABI_23;
275 LIBGCCJIT_ABI_25 {
276   global:
277     gcc_jit_type_get_restrict;
278 } LIBGCCJIT_ABI_24;