< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/GuardedIntrinsicTest.java

Print this page
rev 52509 : [mq]: graal


  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 
  24 
  25 package org.graalvm.compiler.core.test;
  26 
  27 import java.util.List;
  28 
  29 import org.graalvm.compiler.core.common.CompilationIdentifier;
  30 import org.graalvm.compiler.graph.Node;
  31 import org.graalvm.compiler.nodes.ConstantNode;
  32 import org.graalvm.compiler.nodes.Invoke;
  33 import org.graalvm.compiler.nodes.InvokeNode;
  34 import org.graalvm.compiler.nodes.StructuredGraph;
  35 import org.graalvm.compiler.nodes.StructuredGraph.AllowAssumptions;
  36 import org.graalvm.compiler.nodes.ValueNode;
  37 import org.graalvm.compiler.nodes.debug.OpaqueNode;
  38 import org.graalvm.compiler.nodes.extended.LoadHubNode;
  39 import org.graalvm.compiler.nodes.extended.LoadMethodNode;
  40 import org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext;
  41 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin;
  42 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin.Receiver;
  43 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins;
  44 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.Registration;
  45 import org.graalvm.compiler.options.OptionValues;
  46 import org.junit.Assert;
  47 import org.junit.BeforeClass;
  48 import org.junit.Test;
  49 
  50 import jdk.vm.ci.meta.JavaKind;
  51 import jdk.vm.ci.meta.ResolvedJavaMethod;
  52 
  53 /**
  54  * Tests use of an intrinsic for virtual methods where the call site is indirect. A prime example is
  55  * an intrinsic for {@link Object#hashCode()}. The intrinsic can only be used if the call site would
  56  * actually dispatch to {@link Object#hashCode()} and not a method that overrides it.
  57  */




  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 
  24 
  25 package org.graalvm.compiler.core.test;
  26 
  27 import java.util.List;
  28 
  29 import org.graalvm.compiler.core.common.CompilationIdentifier;
  30 import org.graalvm.compiler.graph.Node;
  31 import org.graalvm.compiler.nodes.ConstantNode;
  32 import org.graalvm.compiler.nodes.Invoke;
  33 import org.graalvm.compiler.nodes.InvokeNode;
  34 import org.graalvm.compiler.nodes.StructuredGraph;
  35 import org.graalvm.compiler.nodes.StructuredGraph.AllowAssumptions;
  36 import org.graalvm.compiler.nodes.ValueNode;
  37 import org.graalvm.compiler.nodes.extended.OpaqueNode;
  38 import org.graalvm.compiler.nodes.extended.LoadHubNode;
  39 import org.graalvm.compiler.nodes.extended.LoadMethodNode;
  40 import org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext;
  41 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin;
  42 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin.Receiver;
  43 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins;
  44 import org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.Registration;
  45 import org.graalvm.compiler.options.OptionValues;
  46 import org.junit.Assert;
  47 import org.junit.BeforeClass;
  48 import org.junit.Test;
  49 
  50 import jdk.vm.ci.meta.JavaKind;
  51 import jdk.vm.ci.meta.ResolvedJavaMethod;
  52 
  53 /**
  54  * Tests use of an intrinsic for virtual methods where the call site is indirect. A prime example is
  55  * an intrinsic for {@link Object#hashCode()}. The intrinsic can only be used if the call site would
  56  * actually dispatch to {@link Object#hashCode()} and not a method that overrides it.
  57  */


< prev index next >