-
Enhancement
-
Resolution: Unresolved
-
P4
-
26
For abstract methods, a special AdapterHandlerEntry is created (see AdapterHandlerLibrary::create_abstract_method_handler()) which does not have any code attached to it, and hence no AdapterBlob.
This special handler comes in way of handling adapters uniformly. AdapterHandlerLibrary::is_abstract_method_adapter() is used to idenify and handle this special AdapterHandlerEntry separately.
It also prevents simplification that could have been done if this special AdapterHandlerEntry is not present.
For instance, AdapterHandlerEntry can be updated to have a pointer to AdapterBlob instead of storing entry point addresses. AdapterBlob already stores the entry point offsets. So if we can get rid of this special AdapterHandlerEntry, then it will open the door for more simplification.
This special handler comes in way of handling adapters uniformly. AdapterHandlerLibrary::is_abstract_method_adapter() is used to idenify and handle this special AdapterHandlerEntry separately.
It also prevents simplification that could have been done if this special AdapterHandlerEntry is not present.
For instance, AdapterHandlerEntry can be updated to have a pointer to AdapterBlob instead of storing entry point addresses. AdapterBlob already stores the entry point offsets. So if we can get rid of this special AdapterHandlerEntry, then it will open the door for more simplification.
- links to
-
Review(master) openjdk/jdk/26764