class com.oracle.svm.hosted.image.StringInternFeature implements org.graalvm.nativeimage.hosted.Feature
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.svm.hosted.image.StringInternFeature
super_class: java.lang.Object
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // com.oracle.svm.hosted.image.StringInternFeature this
0: .line 43
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.oracle.svm.hosted.image.StringInternFeature this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/image/StringInternFeature;
public static jdk.vm.ci.meta.ResolvedJavaField getInternedStringsField(jdk.vm.ci.meta.MetaAccessProvider);
descriptor: (Ljdk/vm/ci/meta/MetaAccessProvider;)Ljdk/vm/ci/meta/ResolvedJavaField;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
0: .line 48
aload 0 /* metaAccess */
instanceof com.oracle.graal.pointsto.meta.AnalysisMetaAccess
ifeq 2
1: .line 49
aload 0 /* metaAccess */
checkcast com.oracle.graal.pointsto.meta.AnalysisMetaAccess
ldc Lcom/oracle/svm/core/jdk/StringInternSupport;
invokevirtual com.oracle.graal.pointsto.meta.AnalysisMetaAccess.lookupJavaType:(Ljava/lang/Class;)Lcom/oracle/graal/pointsto/meta/AnalysisType;
invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.registerAsReachable:()V
2: .line 51
StackMap locals:
StackMap stack:
aload 0 /* metaAccess */
ldc Lcom/oracle/svm/core/jdk/StringInternSupport;
ldc "internedStrings"
invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaField:(Ljava/lang/reflect/Field;)Ljdk/vm/ci/meta/ResolvedJavaField;
3: areturn
4: .line 52
StackMap locals:
StackMap stack: java.lang.NoSuchFieldException
astore 1 /* ex */
start local 1 // java.lang.NoSuchFieldException ex
5: .line 53
aload 1 /* ex */
invokestatic com.oracle.svm.core.util.VMError.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 1 // java.lang.NoSuchFieldException ex
end local 0 // jdk.vm.ci.meta.MetaAccessProvider metaAccess
LocalVariableTable:
Start End Slot Name Signature
0 6 0 metaAccess Ljdk/vm/ci/meta/MetaAccessProvider;
5 6 1 ex Ljava/lang/NoSuchFieldException;
Exception table:
from to target type
0 3 4 Class java.lang.NoSuchFieldException
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.Platforms(value = {Lorg/graalvm/nativeimage/Platform$HOSTED_ONLY;})
MethodParameters:
Name Flags
metaAccess
public void afterRegistration(org.graalvm.nativeimage.hosted.Feature$AfterRegistrationAccess);
descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$AfterRegistrationAccess;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // com.oracle.svm.hosted.image.StringInternFeature this
start local 1 // org.graalvm.nativeimage.hosted.Feature$AfterRegistrationAccess access
0: .line 59
ldc Lcom/oracle/svm/core/jdk/StringInternSupport;
new com.oracle.svm.core.jdk.StringInternSupport
dup
invokespecial com.oracle.svm.core.jdk.StringInternSupport.<init>:()V
invokestatic org.graalvm.nativeimage.ImageSingletons.add:(Ljava/lang/Class;Ljava/lang/Object;)V
1: .line 60
return
end local 1 // org.graalvm.nativeimage.hosted.Feature$AfterRegistrationAccess access
end local 0 // com.oracle.svm.hosted.image.StringInternFeature this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/svm/hosted/image/StringInternFeature;
0 2 1 access Lorg/graalvm/nativeimage/hosted/Feature$AfterRegistrationAccess;
MethodParameters:
Name Flags
access
public void beforeAnalysis(org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess);
descriptor: (Lorg/graalvm/nativeimage/hosted/Feature$BeforeAnalysisAccess;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=2
start local 0 // com.oracle.svm.hosted.image.StringInternFeature this
start local 1 // org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess a
0: .line 64
aload 1 /* a */
checkcast com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl
astore 2 /* config */
start local 2 // com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl config
1: .line 67
aload 2 /* config */
invokevirtual com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl.getMetaAccess:()Lcom/oracle/graal/pointsto/meta/AnalysisMetaAccess;
invokestatic com.oracle.svm.hosted.image.StringInternFeature.getInternedStringsField:(Ljdk/vm/ci/meta/MetaAccessProvider;)Ljdk/vm/ci/meta/ResolvedJavaField;
pop
2: .line 68
return
end local 2 // com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl config
end local 1 // org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess a
end local 0 // com.oracle.svm.hosted.image.StringInternFeature this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/svm/hosted/image/StringInternFeature;
0 3 1 a Lorg/graalvm/nativeimage/hosted/Feature$BeforeAnalysisAccess;
1 3 2 config Lcom/oracle/svm/hosted/FeatureImpl$BeforeAnalysisAccessImpl;
MethodParameters:
Name Flags
a
}
SourceFile: "StringInternFeature.java"
InnerClasses:
public BeforeAnalysisAccessImpl = com.oracle.svm.hosted.FeatureImpl$BeforeAnalysisAccessImpl of com.oracle.svm.hosted.FeatureImpl
public abstract AfterRegistrationAccess = org.graalvm.nativeimage.hosted.Feature$AfterRegistrationAccess of org.graalvm.nativeimage.hosted.Feature
public abstract BeforeAnalysisAccess = org.graalvm.nativeimage.hosted.Feature$BeforeAnalysisAccess of org.graalvm.nativeimage.hosted.Feature
RuntimeVisibleAnnotations:
com.oracle.svm.core.annotate.AutomaticFeature()