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);