public class StandardGraphBuilderPlugins extends Object
InvocationPlugin
s.Modifier and Type | Class and Description |
---|---|
static class |
StandardGraphBuilderPlugins.BoxPlugin |
(package private) static class |
StandardGraphBuilderPlugins.Options |
static class |
StandardGraphBuilderPlugins.UnboxPlugin |
static class |
StandardGraphBuilderPlugins.UnsafeGetPlugin |
static class |
StandardGraphBuilderPlugins.UnsafePutPlugin |
static class |
StandardGraphBuilderPlugins.UnsignedMathPlugin |
Modifier and Type | Field and Description |
---|---|
private static Field |
STRING_VALUE_FIELD |
Constructor and Description |
---|
StandardGraphBuilderPlugins() |
private static final Field STRING_VALUE_FIELD
public StandardGraphBuilderPlugins()
public static void registerInvocationPlugins(MetaAccessProvider metaAccess, InvocationPlugins plugins, boolean useBoxingPlugins)
private static void registerStringPlugins(InvocationPlugins plugins)
private static void registerArraysPlugins(InvocationPlugins plugins)
private static void registerArrayPlugins(InvocationPlugins plugins)
private static void registerUnsafePlugins(InvocationPlugins plugins)
private static void registerIntegerLongPlugins(InvocationPlugins plugins, Kind kind)
private static void registerCharacterPlugins(InvocationPlugins plugins)
private static void registerShortPlugins(InvocationPlugins plugins)
private static void registerFloatPlugins(InvocationPlugins plugins)
private static void registerDoublePlugins(InvocationPlugins plugins)
private static void registerMathPlugins(InvocationPlugins plugins)
private static void registerUnsignedMathPlugins(InvocationPlugins plugins)
protected static void registerBoxingPlugins(InvocationPlugins plugins)
private static void registerObjectPlugins(InvocationPlugins plugins)
private static void registerClassPlugins(InvocationPlugins plugins)
private static void registerEdgesPlugins(MetaAccessProvider metaAccess, InvocationPlugins plugins)
Edges
. These
substitutions improve the performance by forcing the relevant methods to be inlined
(intrinsification being a special form of inlining) and removing a checked cast. The latter
cannot be done directly in Java code as DeferredPiNode
is not available to the
project containing Edges
.private static void registerGraalDirectivesPlugins(InvocationPlugins plugins)
private static void registerJMHBlackholePlugins(InvocationPlugins plugins)
private static void registerJFRThrowablePlugins(InvocationPlugins plugins)