Mercurial > hg > graal-compiler
comparison graal/GraalCompiler/src/com/sun/c1x/ir/MonitorEnter.java @ 2596:1c36b17f7ee0
new node layout: AccessMonitor, Invoke
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Thu, 05 May 2011 16:07:00 +0200 |
parents | c58a301eb2d7 |
children | 3558ca7088c0 |
comparison
equal
deleted
inserted
replaced
2595:4a4dab936c1e | 2596:1c36b17f7ee0 |
---|---|
20 * or visit www.oracle.com if you need additional information or have any | 20 * or visit www.oracle.com if you need additional information or have any |
21 * questions. | 21 * questions. |
22 */ | 22 */ |
23 package com.sun.c1x.ir; | 23 package com.sun.c1x.ir; |
24 | 24 |
25 import com.oracle.graal.graph.*; | |
25 import com.sun.c1x.debug.*; | 26 import com.sun.c1x.debug.*; |
26 import com.sun.c1x.value.*; | 27 import com.sun.c1x.value.*; |
27 | 28 |
28 /** | 29 /** |
29 * The {@code MonitorEnter} instruction represents the acquisition of a monitor. | 30 * The {@code MonitorEnter} instruction represents the acquisition of a monitor. |
30 * | |
31 * @author Ben L. Titzer | |
32 */ | 31 */ |
33 public final class MonitorEnter extends AccessMonitor { | 32 public final class MonitorEnter extends AccessMonitor { |
33 | |
34 private static final int INPUT_COUNT = 0; | |
35 private static final int SUCCESSOR_COUNT = 0; | |
34 | 36 |
35 private FrameState stateAfter; | 37 private FrameState stateAfter; |
36 | 38 |
37 /** | 39 /** |
38 * Creates a new MonitorEnter instruction. | 40 * Creates a new MonitorEnter instruction. |
39 * | 41 * |
40 * @param object the instruction producing the object | 42 * @param object the instruction producing the object |
41 * @param lockAddress the address of the on-stack lock object or {@code null} if the runtime does not place locks on the stack | 43 * @param lockAddress the address of the on-stack lock object or {@code null} if the runtime does not place locks on the stack |
42 * @param lockNumber the number of the lock | 44 * @param lockNumber the number of the lock |
43 * @param stateBefore the state before | 45 * @param stateBefore the state before |
46 * @param graph | |
44 */ | 47 */ |
45 public MonitorEnter(Value object, Value lockAddress, int lockNumber, FrameState stateBefore) { | 48 public MonitorEnter(Value object, Value lockAddress, int lockNumber, FrameState stateBefore, Graph graph) { |
46 super(object, lockAddress, stateBefore, lockNumber); | 49 super(object, lockAddress, stateBefore, lockNumber, INPUT_COUNT, SUCCESSOR_COUNT, graph); |
47 } | 50 } |
48 | 51 |
49 @Override | 52 @Override |
50 public void accept(ValueVisitor v) { | 53 public void accept(ValueVisitor v) { |
51 v.visitMonitorEnter(this); | 54 v.visitMonitorEnter(this); |