mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-26 14:24:46 +02:00
8156768: [JVMCI] remove support for patching Symbol pointers
Reviewed-by: iveresov
This commit is contained in:
parent
5e2fa37504
commit
9f43471b55
13 changed files with 2 additions and 141 deletions
|
@ -181,8 +181,8 @@ void* CodeInstaller::record_metadata_reference(Handle constant, TRAPS) {
|
|||
/*
|
||||
* This method needs to return a raw (untyped) pointer, since the value of a pointer to the base
|
||||
* class is in general not equal to the pointer of the subclass. When patching metaspace pointers,
|
||||
* the compiler expects a direct pointer to the subclass (Klass*, Method* or Symbol*), not a
|
||||
* pointer to the base class (Metadata* or MetaspaceObj*).
|
||||
* the compiler expects a direct pointer to the subclass (Klass* or Method*), not a pointer to the
|
||||
* base class (Metadata* or MetaspaceObj*).
|
||||
*/
|
||||
oop obj = HotSpotMetaspaceConstantImpl::metaspaceObject(constant);
|
||||
if (obj->is_a(HotSpotResolvedObjectTypeImpl::klass())) {
|
||||
|
@ -197,11 +197,6 @@ void* CodeInstaller::record_metadata_reference(Handle constant, TRAPS) {
|
|||
int index = _oop_recorder->find_index(method);
|
||||
TRACE_jvmci_3("metadata[%d of %d] = %s", index, _oop_recorder->metadata_count(), method->name()->as_C_string());
|
||||
return method;
|
||||
} else if (obj->is_a(HotSpotSymbol::klass())) {
|
||||
Symbol* symbol = (Symbol*) (address) HotSpotSymbol::pointer(obj);
|
||||
assert(!HotSpotMetaspaceConstantImpl::compressed(constant), "unexpected compressed symbol pointer %s @ " INTPTR_FORMAT, symbol->as_C_string(), p2i(symbol));
|
||||
TRACE_jvmci_3("symbol = %s", symbol->as_C_string());
|
||||
return symbol;
|
||||
} else {
|
||||
JVMCI_ERROR_NULL("unexpected metadata reference for constant of type %s", obj->klass()->signature_name());
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue