public final class HotSpotJITClassInitializationPlugin extends Object implements ClassInitializationPlugin
| Constructor and Description |
|---|
HotSpotJITClassInitializationPlugin() |
| Modifier and Type | Method and Description |
|---|---|
boolean |
apply(GraphBuilderContext builder,
ResolvedJavaType type,
Supplier<FrameState> frameState,
ValueNode[] classInit)
Emits a class initialization barrier for
type. |
void |
loadReferencedType(GraphBuilderContext builder,
ConstantPool cp,
int cpi,
int opcode)
Ensures that the type referenced by the constant pool entry specified by
cp and
cpi is loaded. |
boolean |
supportsLazyInitialization(ConstantPool cp)
Determines if
cp has a variation of ConstantPool.loadReferencedType(int, int) that can
resolved a type without initializing it. |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitapplypublic boolean apply(GraphBuilderContext builder, ResolvedJavaType type, Supplier<FrameState> frameState, ValueNode[] classInit)
ClassInitializationPlugintype.apply in interface ClassInitializationPluginframeState - supplier to create a frame state representing the state just prior to
execution of the class initialization barrierclassInit - if non-null, the node representing the class initialization barrier should
be returned in element 0 of this arraytrue if this method emitted a barrier,false if notpublic boolean supportsLazyInitialization(ConstantPool cp)
ClassInitializationPlugincp has a variation of ConstantPool.loadReferencedType(int, int) that can
resolved a type without initializing it.supportsLazyInitialization in interface ClassInitializationPluginpublic void loadReferencedType(GraphBuilderContext builder, ConstantPool cp, int cpi, int opcode)
ClassInitializationPlugincp and
cpi is loaded. If cp does not support
lazy initialization, then the type is
initialized after resolution.loadReferencedType in interface ClassInitializationPlugincpi - the index of the constant pool entry that references the typeopcode - the opcode of the instruction that references the type