< prev index next >

src/jdk.aot/share/classes/jdk.tools.jaotc.binformat/src/jdk/tools/jaotc/binformat/BinaryContainer.java

Print this page
rev 47466 : 8132547: [AOT] support invokedynamic instructions
Reviewed-by: iveresov, kvn


 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"},


< prev index next >