< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/nodes/BasicArrayCopyNode.java

Print this page

        

*** 22,39 **** */ package org.graalvm.compiler.replacements.nodes; import static org.graalvm.compiler.nodeinfo.InputType.Memory; import static org.graalvm.compiler.nodeinfo.InputType.State; - import static org.graalvm.compiler.nodeinfo.NodeCycles.CYCLES_256; import static org.graalvm.compiler.nodeinfo.NodeSize.SIZE_64; import static org.graalvm.word.LocationIdentity.any; import org.graalvm.compiler.core.common.type.StampFactory; import org.graalvm.compiler.debug.DebugContext; import org.graalvm.compiler.graph.NodeClass; import org.graalvm.compiler.graph.NodeInputList; import org.graalvm.compiler.nodeinfo.NodeInfo; import org.graalvm.compiler.nodes.ConstantNode; import org.graalvm.compiler.nodes.DeoptimizingNode; import org.graalvm.compiler.nodes.FrameState; import org.graalvm.compiler.nodes.NamedLocationIdentity; --- 22,39 ---- */ package org.graalvm.compiler.replacements.nodes; import static org.graalvm.compiler.nodeinfo.InputType.Memory; import static org.graalvm.compiler.nodeinfo.InputType.State; import static org.graalvm.compiler.nodeinfo.NodeSize.SIZE_64; import static org.graalvm.word.LocationIdentity.any; import org.graalvm.compiler.core.common.type.StampFactory; import org.graalvm.compiler.debug.DebugContext; import org.graalvm.compiler.graph.NodeClass; import org.graalvm.compiler.graph.NodeInputList; + import org.graalvm.compiler.nodeinfo.NodeCycles; import org.graalvm.compiler.nodeinfo.NodeInfo; import org.graalvm.compiler.nodes.ConstantNode; import org.graalvm.compiler.nodes.DeoptimizingNode; import org.graalvm.compiler.nodes.FrameState; import org.graalvm.compiler.nodes.NamedLocationIdentity;
*** 54,64 **** import jdk.vm.ci.code.BytecodeFrame; import jdk.vm.ci.meta.JavaKind; import jdk.vm.ci.meta.ResolvedJavaType; ! @NodeInfo(cycles = CYCLES_256, size = SIZE_64) public class BasicArrayCopyNode extends AbstractMemoryCheckpoint implements Virtualizable, MemoryCheckpoint.Single, MemoryAccess, Lowerable, DeoptimizingNode.DeoptDuring { public static final NodeClass<BasicArrayCopyNode> TYPE = NodeClass.create(BasicArrayCopyNode.class); static final int SRC_ARG = 0; --- 54,64 ---- import jdk.vm.ci.code.BytecodeFrame; import jdk.vm.ci.meta.JavaKind; import jdk.vm.ci.meta.ResolvedJavaType; ! @NodeInfo(cycles = NodeCycles.CYCLES_UNKNOWN, size = SIZE_64) public class BasicArrayCopyNode extends AbstractMemoryCheckpoint implements Virtualizable, MemoryCheckpoint.Single, MemoryAccess, Lowerable, DeoptimizingNode.DeoptDuring { public static final NodeClass<BasicArrayCopyNode> TYPE = NodeClass.create(BasicArrayCopyNode.class); static final int SRC_ARG = 0;
*** 213,223 **** } if (!checkEntryTypes(srcPosInt, len, srcVirtual, destVirtual.type().getComponentType(), tool)) { return; } for (int i = 0; i < len; i++) { ! tool.setVirtualEntry(destVirtual, destPosInt + i, tool.getEntry(srcVirtual, srcPosInt + i), false); } tool.delete(); DebugContext debug = getDebug(); if (debug.isLogEnabled()) { debug.log("virtualized arraycopy(%s, %d, %s, %d, %d)", getSource(), srcPosInt, getDestination(), destPosInt, len); --- 213,223 ---- } if (!checkEntryTypes(srcPosInt, len, srcVirtual, destVirtual.type().getComponentType(), tool)) { return; } for (int i = 0; i < len; i++) { ! tool.setVirtualEntry(destVirtual, destPosInt + i, tool.getEntry(srcVirtual, srcPosInt + i)); } tool.delete(); DebugContext debug = getDebug(); if (debug.isLogEnabled()) { debug.log("virtualized arraycopy(%s, %d, %s, %d, %d)", getSource(), srcPosInt, getDestination(), destPosInt, len);
*** 233,243 **** return; } for (int i = 0; i < len; i++) { LoadIndexedNode load = new LoadIndexedNode(graph().getAssumptions(), srcAlias, ConstantNode.forInt(i + srcPosInt, graph()), destComponentType.getJavaKind()); tool.addNode(load); ! tool.setVirtualEntry(destVirtual, destPosInt + i, load, false); } tool.delete(); } } } --- 233,243 ---- return; } for (int i = 0; i < len; i++) { LoadIndexedNode load = new LoadIndexedNode(graph().getAssumptions(), srcAlias, ConstantNode.forInt(i + srcPosInt, graph()), destComponentType.getJavaKind()); tool.addNode(load); ! tool.setVirtualEntry(destVirtual, destPosInt + i, load); } tool.delete(); } } }
< prev index next >