public class ReflectiveInvokeMethod extends NonBytecodeStaticMethod
Constructor and Description |
---|
ReflectiveInvokeMethod(String name,
jdk.vm.ci.meta.ResolvedJavaMethod prototype,
Method method) |
Modifier and Type | Method and Description |
---|---|
org.graalvm.compiler.nodes.StructuredGraph |
buildGraph(org.graalvm.compiler.debug.DebugContext ctx,
jdk.vm.ci.meta.ResolvedJavaMethod m,
com.oracle.graal.pointsto.meta.HostedProviders providers,
com.oracle.graal.pointsto.infrastructure.GraphProvider.Purpose purpose)
Builds the graph that is invoked via
SubstrateMethodAccessor . |
allowRuntimeCompilation, asStackTraceElement, canBeInlined, canBeStaticallyBound, getAnnotation, getAnnotations, getCode, getCodeSize, getConstantPool, getDeclaredAnnotations, getDeclaringClass, getEncoding, getExceptionHandlers, getGenericParameterTypes, getLineNumberTable, getLocalVariableTable, getMaxLocals, getMaxStackSize, getModifiers, getName, getParameterAnnotations, getParameters, getProfilingInfo, getSignature, getSpeculationLog, hasNeverInlineDirective, isBridge, isClassInitializer, isConstructor, isDefault, isInVirtualMethodTable, isSynthetic, isVarArgs, reprofile, shouldBeInlined
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getParameterAnnotation, getParameterAnnotations, getProfilingInfo, hasBytecodes, hasReceiver, isFinal, isJavaLangObjectInit, toParameterTypes
isAbstract, isConcrete, isFinalFlagSet, isInterface, isNative, isPackagePrivate, isPrivate, isProtected, isPublic, isStatic, isStrict, isSynchronized, isTransient, isVolatile
getAnnotationsByType, getDeclaredAnnotation, getDeclaredAnnotationsByType, isAnnotationPresent
public org.graalvm.compiler.nodes.StructuredGraph buildGraph(org.graalvm.compiler.debug.DebugContext ctx, jdk.vm.ci.meta.ResolvedJavaMethod m, com.oracle.graal.pointsto.meta.HostedProviders providers, com.oracle.graal.pointsto.infrastructure.GraphProvider.Purpose purpose)
SubstrateMethodAccessor
. To save code size, both
the "regular"
and the
SubstrateMethodAccessor.invokeSpecial(java.lang.Object, java.lang.Object[])
invocations are done via the same generated
graph. The first parameter decides which invocation is done.