< prev index next >
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/ComputeObjectAddressNode.java
Print this page
*** 28,37 ****
--- 28,38 ----
import org.graalvm.compiler.core.common.type.StampFactory;
import org.graalvm.compiler.graph.NodeClass;
import org.graalvm.compiler.nodeinfo.NodeInfo;
import org.graalvm.compiler.nodeinfo.NodeSize;
+ import org.graalvm.compiler.nodes.calc.SignExtendNode;
import org.graalvm.compiler.nodes.debug.ControlFlowAnchored;
import org.graalvm.compiler.nodes.spi.Lowerable;
import org.graalvm.compiler.nodes.spi.LoweringTool;
import jdk.vm.ci.meta.JavaKind;
*** 48,58 ****
@Input ValueNode offset;
public ComputeObjectAddressNode(ValueNode obj, ValueNode offset) {
super(TYPE, StampFactory.forKind(JavaKind.Long));
this.object = obj;
! this.offset = offset;
}
@NodeIntrinsic
public static native long get(Object array, long offset);
--- 49,59 ----
@Input ValueNode offset;
public ComputeObjectAddressNode(ValueNode obj, ValueNode offset) {
super(TYPE, StampFactory.forKind(JavaKind.Long));
this.object = obj;
! this.offset = SignExtendNode.create(offset, 64, NodeView.DEFAULT);
}
@NodeIntrinsic
public static native long get(Object array, long offset);
< prev index next >