src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/memory/FixedAccessNode.java
equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
23 |
23 |
24 |
24 |
25 package org.graalvm.compiler.nodes.memory; |
25 package org.graalvm.compiler.nodes.memory; |
26 |
26 |
27 import org.graalvm.compiler.core.common.type.Stamp; |
27 import org.graalvm.compiler.core.common.type.Stamp; |
28 import org.graalvm.compiler.graph.IterableNodeType; |
|
29 import org.graalvm.compiler.graph.NodeClass; |
28 import org.graalvm.compiler.graph.NodeClass; |
30 import org.graalvm.compiler.nodeinfo.InputType; |
29 import org.graalvm.compiler.nodeinfo.InputType; |
31 import org.graalvm.compiler.nodeinfo.NodeInfo; |
30 import org.graalvm.compiler.nodeinfo.NodeInfo; |
32 import org.graalvm.compiler.nodes.DeoptimizingFixedWithNextNode; |
31 import org.graalvm.compiler.nodes.DeoptimizingFixedWithNextNode; |
33 import org.graalvm.compiler.nodes.FrameState; |
32 import org.graalvm.compiler.nodes.FrameState; |
38 /** |
37 /** |
39 * Accesses a value at an memory address specified by an {@linkplain #address address}. The access |
38 * Accesses a value at an memory address specified by an {@linkplain #address address}. The access |
40 * does not include a null check on the object. |
39 * does not include a null check on the object. |
41 */ |
40 */ |
42 @NodeInfo |
41 @NodeInfo |
43 public abstract class FixedAccessNode extends DeoptimizingFixedWithNextNode implements Access, IterableNodeType { |
42 public abstract class FixedAccessNode extends DeoptimizingFixedWithNextNode implements Access { |
44 public static final NodeClass<FixedAccessNode> TYPE = NodeClass.create(FixedAccessNode.class); |
43 public static final NodeClass<FixedAccessNode> TYPE = NodeClass.create(FixedAccessNode.class); |
45 |
44 |
46 @OptionalInput(InputType.Guard) protected GuardingNode guard; |
45 @OptionalInput(InputType.Guard) protected GuardingNode guard; |
47 |
46 |
48 @Input(InputType.Association) AddressNode address; |
47 @Input(InputType.Association) AddressNode address; |