127
128 // List of relocation table entries - (symbolName, relocationInfo)
129 private final Map<String, Symbol> symbolTable = new HashMap<>();
130 private final Map<Symbol, List<Relocation>> relocationTable = new HashMap<>();
131 private final Map<Symbol, Relocation> uniqueRelocationTable = new HashMap<>();
132
133 /**
134 * Mapping of local VM function names to known global symbols generated in the output binary.
135 */
136 private static final HashMap<String, String> functionNamesToAOTSymbols = new HashMap<>();
137
138 private static final String[][] map = {
139 //@formatter:off
140 {"CompilerToVM::Data::SharedRuntime_deopt_blob_unpack", "_aot_deopt_blob_unpack"},
141 {"CompilerToVM::Data::SharedRuntime_deopt_blob_uncommon_trap", "_aot_deopt_blob_uncommon_trap"},
142 {"CompilerToVM::Data::SharedRuntime_ic_miss_stub", "_aot_ic_miss_stub"},
143 {"CompilerToVM::Data::SharedRuntime_handle_wrong_method_stub", "_aot_handle_wrong_method_stub"},
144 {"SharedRuntime::exception_handler_for_return_address", "_aot_exception_handler_for_return_address"},
145 {"SharedRuntime::register_finalizer", "_aot_register_finalizer"},
146 {"SharedRuntime::OSR_migration_end", "_aot_OSR_migration_end"},
147 {"CompilerRuntime::resolve_string_by_symbol", "_aot_resolve_string_by_symbol"},
148 {"CompilerRuntime::resolve_klass_by_symbol", "_aot_resolve_klass_by_symbol"},
149 {"CompilerRuntime::resolve_method_by_symbol_and_load_counters","_aot_resolve_method_by_symbol_and_load_counters"},
150 {"CompilerRuntime::initialize_klass_by_symbol", "_aot_initialize_klass_by_symbol"},
151 {"CompilerRuntime::invocation_event", "_aot_invocation_event"},
152 {"CompilerRuntime::backedge_event", "_aot_backedge_event"},
153
154 {"CompilerToVM::Data::dpow", "_aot_shared_runtime_dpow"},
155 {"CompilerToVM::Data::dexp", "_aot_shared_runtime_dexp"},
156 {"CompilerToVM::Data::dcos", "_aot_shared_runtime_dcos"},
157 {"CompilerToVM::Data::dsin", "_aot_shared_runtime_dsin"},
158 {"CompilerToVM::Data::dtan", "_aot_shared_runtime_dtan"},
159 {"CompilerToVM::Data::dlog", "_aot_shared_runtime_dlog"},
160 {"CompilerToVM::Data::dlog10", "_aot_shared_runtime_dlog10"},
161
162 {"StubRoutines::_jbyte_arraycopy", "_aot_stub_routines_jbyte_arraycopy"},
163 {"StubRoutines::_jshort_arraycopy", "_aot_stub_routines_jshort_arraycopy"},
164 {"StubRoutines::_jint_arraycopy", "_aot_stub_routines_jint_arraycopy"},
165 {"StubRoutines::_jlong_arraycopy", "_aot_stub_routines_jlong_arraycopy"},
166 {"StubRoutines::_oop_arraycopy", "_aot_stub_routines_oop_arraycopy"},
|
127
128 // List of relocation table entries - (symbolName, relocationInfo)
129 private final Map<String, Symbol> symbolTable = new HashMap<>();
130 private final Map<Symbol, List<Relocation>> relocationTable = new HashMap<>();
131 private final Map<Symbol, Relocation> uniqueRelocationTable = new HashMap<>();
132
133 /**
134 * Mapping of local VM function names to known global symbols generated in the output binary.
135 */
136 private static final HashMap<String, String> functionNamesToAOTSymbols = new HashMap<>();
137
138 private static final String[][] map = {
139 //@formatter:off
140 {"CompilerToVM::Data::SharedRuntime_deopt_blob_unpack", "_aot_deopt_blob_unpack"},
141 {"CompilerToVM::Data::SharedRuntime_deopt_blob_uncommon_trap", "_aot_deopt_blob_uncommon_trap"},
142 {"CompilerToVM::Data::SharedRuntime_ic_miss_stub", "_aot_ic_miss_stub"},
143 {"CompilerToVM::Data::SharedRuntime_handle_wrong_method_stub", "_aot_handle_wrong_method_stub"},
144 {"SharedRuntime::exception_handler_for_return_address", "_aot_exception_handler_for_return_address"},
145 {"SharedRuntime::register_finalizer", "_aot_register_finalizer"},
146 {"SharedRuntime::OSR_migration_end", "_aot_OSR_migration_end"},
147 {"CompilerRuntime::resolve_dynamic_invoke", "_aot_resolve_dynamic_invoke"},
148 {"CompilerRuntime::resolve_string_by_symbol", "_aot_resolve_string_by_symbol"},
149 {"CompilerRuntime::resolve_klass_by_symbol", "_aot_resolve_klass_by_symbol"},
150 {"CompilerRuntime::resolve_method_by_symbol_and_load_counters","_aot_resolve_method_by_symbol_and_load_counters"},
151 {"CompilerRuntime::initialize_klass_by_symbol", "_aot_initialize_klass_by_symbol"},
152 {"CompilerRuntime::invocation_event", "_aot_invocation_event"},
153 {"CompilerRuntime::backedge_event", "_aot_backedge_event"},
154
155 {"CompilerToVM::Data::dpow", "_aot_shared_runtime_dpow"},
156 {"CompilerToVM::Data::dexp", "_aot_shared_runtime_dexp"},
157 {"CompilerToVM::Data::dcos", "_aot_shared_runtime_dcos"},
158 {"CompilerToVM::Data::dsin", "_aot_shared_runtime_dsin"},
159 {"CompilerToVM::Data::dtan", "_aot_shared_runtime_dtan"},
160 {"CompilerToVM::Data::dlog", "_aot_shared_runtime_dlog"},
161 {"CompilerToVM::Data::dlog10", "_aot_shared_runtime_dlog10"},
162
163 {"StubRoutines::_jbyte_arraycopy", "_aot_stub_routines_jbyte_arraycopy"},
164 {"StubRoutines::_jshort_arraycopy", "_aot_stub_routines_jshort_arraycopy"},
165 {"StubRoutines::_jint_arraycopy", "_aot_stub_routines_jint_arraycopy"},
166 {"StubRoutines::_jlong_arraycopy", "_aot_stub_routines_jlong_arraycopy"},
167 {"StubRoutines::_oop_arraycopy", "_aot_stub_routines_oop_arraycopy"},
|