src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/java/AtomicReadAndAddNode.java
equal
deleted
inserted
replaced
37 import org.graalvm.compiler.nodes.spi.LIRLowerable; |
37 import org.graalvm.compiler.nodes.spi.LIRLowerable; |
38 import org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool; |
38 import org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool; |
39 import org.graalvm.word.LocationIdentity; |
39 import org.graalvm.word.LocationIdentity; |
40 |
40 |
41 import jdk.vm.ci.meta.Value; |
41 import jdk.vm.ci.meta.Value; |
42 import sun.misc.Unsafe; |
|
43 |
42 |
44 /** |
43 /** |
45 * Represents an atomic read-and-add operation like {@link Unsafe#getAndAddInt(Object, long, int)}. |
44 * Represents an atomic read-and-add operation like |
|
45 * {@link sun.misc.Unsafe#getAndAddInt(Object, long, int)}. |
46 */ |
46 */ |
47 @NodeInfo(allowedUsageTypes = Memory, cycles = CYCLES_8, size = SIZE_2) |
47 @NodeInfo(allowedUsageTypes = Memory, cycles = CYCLES_8, size = SIZE_2) |
48 public final class AtomicReadAndAddNode extends AbstractMemoryCheckpoint implements LIRLowerable, MemoryCheckpoint.Single { |
48 public final class AtomicReadAndAddNode extends AbstractMemoryCheckpoint implements LIRLowerable, MemoryCheckpoint.Single { |
49 |
49 |
50 public static final NodeClass<AtomicReadAndAddNode> TYPE = NodeClass.create(AtomicReadAndAddNode.class); |
50 public static final NodeClass<AtomicReadAndAddNode> TYPE = NodeClass.create(AtomicReadAndAddNode.class); |