public class JNIFieldAccessorMethod extends EntryPointCallStubMethod
basic type of the field, to static or non-static fields, and can either read or write the field.
The generated method implements one of the following JNI functions:
GetObjectFieldGetBooleanFieldGetByteFieldGetCharFieldGetShortFieldGetIntFieldGetLongFieldGetFloatFieldGetDoubleFieldSetObjectFieldSetBooleanFieldSetByteFieldSetCharFieldSetShortFieldSetIntFieldSetLongFieldSetFloatFieldSetDoubleFieldGetStaticObjectFieldGetStaticBooleanFieldGetStaticByteFieldGetStaticCharFieldGetStaticShortFieldGetStaticIntFieldGetStaticLongFieldGetStaticFloatFieldGetStaticDoubleFieldSetStaticObjectFieldSetStaticBooleanFieldSetStaticByteFieldSetStaticCharFieldSetStaticShortFieldSetStaticIntFieldSetStaticLongFieldSetStaticFloatFieldSetStaticDoubleField| Modifier and Type | Class and Description |
|---|---|
static class |
JNIFieldAccessorMethod.Factory |
| Modifier and Type | Field and Description |
|---|---|
protected jdk.vm.ci.meta.JavaKind |
fieldKind |
protected boolean |
isSetter |
protected boolean |
isStatic |
| Modifier | Constructor and Description |
|---|---|
protected |
JNIFieldAccessorMethod(jdk.vm.ci.meta.JavaKind fieldKind,
boolean isSetter,
boolean isStatic,
jdk.vm.ci.meta.ResolvedJavaType declaringClass,
jdk.vm.ci.meta.ConstantPool constantPool,
jdk.vm.ci.meta.MetaAccessProvider metaAccess) |
| Modifier and Type | Method and Description |
|---|---|
org.graalvm.compiler.nodes.StructuredGraph |
buildGraph(org.graalvm.compiler.debug.DebugContext debug,
jdk.vm.ci.meta.ResolvedJavaMethod method,
com.oracle.graal.pointsto.meta.HostedProviders providers,
com.oracle.graal.pointsto.infrastructure.GraphProvider.Purpose purpose) |
protected org.graalvm.compiler.nodes.ValueNode |
buildGraphBody(JNIGraphKit kit,
List<org.graalvm.compiler.nodes.ValueNode> arguments,
org.graalvm.compiler.java.FrameStateBuilder state,
jdk.vm.ci.meta.MetaAccessProvider metaAccess) |
CEntryPointData |
createEntryPointData() |
getAnnotation, getAnnotations, getDeclaredAnnotationsallowRuntimeCompilation, asStackTraceElement, canBeInlined, canBeStaticallyBound, getCode, getCodeSize, getConstantPool, getDeclaringClass, getEncoding, getExceptionHandlers, getGenericParameterTypes, getLineNumberTable, getLocalVariableTable, getMaxLocals, getMaxStackSize, getModifiers, getName, getParameterAnnotations, getParameters, getProfilingInfo, getSignature, getSpeculationLog, hasNeverInlineDirective, isBridge, isClassInitializer, isConstructor, isDefault, isInVirtualMethodTable, isSynthetic, isVarArgs, reprofile, shouldBeInlinedclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetParameterAnnotation, getParameterAnnotations, getProfilingInfo, hasBytecodes, hasReceiver, isFinal, isJavaLangObjectInit, toParameterTypesisAbstract, isConcrete, isFinalFlagSet, isInterface, isNative, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, isStrict, isSynchronized, isTransient, isVolatilegetAnnotationsByType, getDeclaredAnnotation, getDeclaredAnnotationsByType, isAnnotationPresentprotected final jdk.vm.ci.meta.JavaKind fieldKind
protected final boolean isSetter
protected final boolean isStatic
protected JNIFieldAccessorMethod(jdk.vm.ci.meta.JavaKind fieldKind,
boolean isSetter,
boolean isStatic,
jdk.vm.ci.meta.ResolvedJavaType declaringClass,
jdk.vm.ci.meta.ConstantPool constantPool,
jdk.vm.ci.meta.MetaAccessProvider metaAccess)
public org.graalvm.compiler.nodes.StructuredGraph buildGraph(org.graalvm.compiler.debug.DebugContext debug,
jdk.vm.ci.meta.ResolvedJavaMethod method,
com.oracle.graal.pointsto.meta.HostedProviders providers,
com.oracle.graal.pointsto.infrastructure.GraphProvider.Purpose purpose)
protected org.graalvm.compiler.nodes.ValueNode buildGraphBody(JNIGraphKit kit, List<org.graalvm.compiler.nodes.ValueNode> arguments, org.graalvm.compiler.java.FrameStateBuilder state, jdk.vm.ci.meta.MetaAccessProvider metaAccess)
public CEntryPointData createEntryPointData()