]>
Commit | Line | Data |
---|---|---|
863e76f9 | 1 | # Linker script for libgccjit.so |
f1717362 | 2 | # Copyright (C) 2013-2016 Free Software Foundation, Inc. |
863e76f9 | 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/>. */ | |
adb2df55 | 20 | |
21 | # The initial release of the library. | |
22 | LIBGCCJIT_ABI_0 | |
863e76f9 | 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; | |
69834ed9 | 38 | gcc_jit_context_compile_to_file; |
863e76f9 | 39 | gcc_jit_context_dump_to_file; |
c97b0d1d | 40 | gcc_jit_context_dump_reproducer_to_file; |
66b69275 | 41 | gcc_jit_context_enable_dump; |
863e76f9 | 42 | gcc_jit_context_get_builtin_function; |
43 | gcc_jit_context_get_first_error; | |
b56bc4a2 | 44 | gcc_jit_context_get_last_error; |
863e76f9 | 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; | |
feea5a1f | 64 | gcc_jit_context_new_rvalue_from_long; |
863e76f9 | 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; | |
3a9ccc11 | 75 | gcc_jit_context_set_logfile; |
863e76f9 | 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; | |
15b6c83e | 95 | gcc_jit_result_get_global; |
863e76f9 | 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: *; | |
adb2df55 | 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; | |
04feb56e | 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; | |
a24ef8d2 | 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; | |
17c0b84b | 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 | }; | |
26a4a13d | 143 | |
144 | LIBGCCJIT_ABI_5 { | |
145 | global: | |
146 | gcc_jit_context_set_bool_use_external_driver; | |
147 | } LIBGCCJIT_ABI_4; |