Mercurial > hg > graal-compiler
comparison graal/GraalCompiler/src/com/sun/c1x/ir/Goto.java @ 2602:0c6564c254af
new node layout: BlockBegin, BlockEnd
-Dc1x.dot=regex for pdf output
escape dot graph labels (<, >, &)
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Fri, 06 May 2011 10:25:37 +0200 |
parents | 16b9a8b5ad39 |
children | a0dd2b907806 |
comparison
equal
deleted
inserted
replaced
2601:224e8b4007bd | 2602:0c6564c254af |
---|---|
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 import com.sun.cri.ci.*; | 28 import com.sun.cri.ci.*; |
28 | 29 |
29 /** | 30 /** |
30 * The {@code Goto} instruction represents the end of a block with an unconditional jump to another block. | 31 * The {@code Goto} instruction represents the end of a block with an unconditional jump to another block. |
31 * | |
32 * @author Ben L. Titzer | |
33 */ | 32 */ |
34 public final class Goto extends BlockEnd { | 33 public final class Goto extends BlockEnd { |
34 | |
35 private static final int INPUT_COUNT = 0; | |
36 private static final int SUCCESSOR_COUNT = 0; | |
35 | 37 |
36 /** | 38 /** |
37 * Constructs a new Goto instruction. | 39 * Constructs a new Goto instruction. |
38 * @param succ the successor block of the goto | 40 * @param succ the successor block of the goto |
39 * @param stateAfter the frame state at the end of this block | 41 * @param stateAfter the frame state at the end of this block |
40 * @param isSafepoint {@code true} if the goto should be considered a safepoint (e.g. backward branch) | 42 * @param isSafepoint {@code true} if the goto should be considered a safepoint (e.g. backward branch) |
43 * @param graph | |
41 */ | 44 */ |
42 public Goto(BlockBegin succ, FrameState stateAfter, boolean isSafepoint) { | 45 public Goto(BlockBegin succ, FrameState stateAfter, boolean isSafepoint, Graph graph) { |
43 super(CiKind.Illegal, stateAfter, isSafepoint); | 46 super(CiKind.Illegal, stateAfter, isSafepoint, 1, INPUT_COUNT, SUCCESSOR_COUNT, graph); |
44 successors.add(succ); | 47 setBlockSuccessor(0, succ); |
45 } | 48 } |
46 | 49 |
47 @Override | 50 @Override |
48 public void accept(ValueVisitor v) { | 51 public void accept(ValueVisitor v) { |
49 v.visitGoto(this); | 52 v.visitGoto(this); |