# HG changeset patch # User Josef Eisl # Date 1449149198 -3600 # Node ID dac2ae5a649f52b1c851272d28d391d619ce8eb7 # Parent d450066656fde923f2ae99329874882c4233dede Remove NodeLIRBuilderTool.visitPauseNode and add LIRGeneratorTool.emitPause. diff -r d450066656fd -r dac2ae5a649f graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java --- a/graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java Wed Dec 09 20:43:28 2015 -0800 +++ b/graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64LIRGenerator.java Thu Dec 03 14:26:38 2015 +0100 @@ -80,6 +80,7 @@ import com.oracle.graal.lir.amd64.AMD64Move.LeaDataOp; import com.oracle.graal.lir.amd64.AMD64Move.MembarOp; import com.oracle.graal.lir.amd64.AMD64Move.StackLeaOp; +import com.oracle.graal.lir.amd64.AMD64PauseOp; import com.oracle.graal.lir.gen.LIRGenerationResult; import com.oracle.graal.lir.gen.LIRGenerator; import com.oracle.graal.phases.util.Providers; @@ -439,4 +440,9 @@ protected void emitTableSwitch(int lowKey, LabelRef defaultTarget, LabelRef[] targets, Value key) { append(new TableSwitchOp(lowKey, defaultTarget, targets, key, newVariable(LIRKind.value(target().arch.getWordKind())), newVariable(key.getLIRKind()))); } + + @Override + public void emitPause() { + append(new AMD64PauseOp()); + } } diff -r d450066656fd -r dac2ae5a649f graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64NodeLIRBuilder.java --- a/graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64NodeLIRBuilder.java Wed Dec 09 20:43:28 2015 -0800 +++ b/graal/com.oracle.graal.compiler.amd64/src/com/oracle/graal/compiler/amd64/AMD64NodeLIRBuilder.java Thu Dec 03 14:26:38 2015 +0100 @@ -33,7 +33,6 @@ import com.oracle.graal.lir.LIRFrameState; import com.oracle.graal.lir.amd64.AMD64BreakpointOp; import com.oracle.graal.lir.amd64.AMD64Call; -import com.oracle.graal.lir.amd64.AMD64PauseOp; import com.oracle.graal.lir.gen.LIRGeneratorTool; import com.oracle.graal.nodes.BreakpointNode; import com.oracle.graal.nodes.DeoptimizingNode; @@ -41,7 +40,6 @@ import com.oracle.graal.nodes.FixedWithNextNode; import com.oracle.graal.nodes.IfNode; import com.oracle.graal.nodes.IndirectCallTargetNode; -import com.oracle.graal.nodes.PauseNode; import com.oracle.graal.nodes.StructuredGraph; import com.oracle.graal.nodes.ValueNode; import com.oracle.graal.nodes.calc.FixedBinaryNode; @@ -116,11 +114,6 @@ } @Override - public void visitPauseNode(PauseNode node) { - append(new AMD64PauseOp()); - } - - @Override public AMD64LIRGenerator getLIRGeneratorTool() { return (AMD64LIRGenerator) gen; } diff -r d450066656fd -r dac2ae5a649f graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java --- a/graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java Wed Dec 09 20:43:28 2015 -0800 +++ b/graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java Thu Dec 03 14:26:38 2015 +0100 @@ -85,6 +85,7 @@ import com.oracle.graal.lir.sparc.SPARCMove.NullCheckOp; import com.oracle.graal.lir.sparc.SPARCMove.StackLoadAddressOp; import com.oracle.graal.lir.sparc.SPARCOP3Op; +import com.oracle.graal.lir.sparc.SPARCPauseOp; import com.oracle.graal.phases.util.Providers; /** @@ -449,4 +450,9 @@ LIR lir = getResult().getLIR(); loadConstantTableBaseOp.setAlive(lir, constantTableBaseProvider.useConstantTableBase); } + + @Override + public void emitPause() { + append(new SPARCPauseOp()); + } } diff -r d450066656fd -r dac2ae5a649f graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCNodeLIRBuilder.java --- a/graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCNodeLIRBuilder.java Wed Dec 09 20:43:28 2015 -0800 +++ b/graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCNodeLIRBuilder.java Thu Dec 03 14:26:38 2015 +0100 @@ -33,9 +33,7 @@ import com.oracle.graal.lir.gen.LIRGeneratorTool; import com.oracle.graal.lir.sparc.SPARCBreakpointOp; import com.oracle.graal.lir.sparc.SPARCJumpOp; -import com.oracle.graal.lir.sparc.SPARCPauseOp; import com.oracle.graal.nodes.BreakpointNode; -import com.oracle.graal.nodes.PauseNode; import com.oracle.graal.nodes.StructuredGraph; import com.oracle.graal.nodes.ValueNode; @@ -67,11 +65,6 @@ } @Override - public void visitPauseNode(PauseNode node) { - append(new SPARCPauseOp()); - } - - @Override protected JumpOp newJumpOp(LabelRef ref) { return new SPARCJumpOp(ref); } diff -r d450066656fd -r dac2ae5a649f graal/com.oracle.graal.lir/src/com/oracle/graal/lir/gen/LIRGeneratorTool.java --- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/gen/LIRGeneratorTool.java Wed Dec 09 20:43:28 2015 -0800 +++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/gen/LIRGeneratorTool.java Thu Dec 03 14:26:38 2015 +0100 @@ -257,4 +257,6 @@ void emitBlackhole(Value operand); LIRKind getLIRKind(Stamp stamp); + + void emitPause(); } diff -r d450066656fd -r dac2ae5a649f graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PauseNode.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PauseNode.java Wed Dec 09 20:43:28 2015 -0800 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/PauseNode.java Thu Dec 03 14:26:38 2015 +0100 @@ -40,7 +40,7 @@ @Override public void generate(NodeLIRBuilderTool gen) { - gen.visitPauseNode(this); + gen.getLIRGeneratorTool().emitPause(); } @NodeIntrinsic diff -r d450066656fd -r dac2ae5a649f graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/NodeLIRBuilderTool.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/NodeLIRBuilderTool.java Wed Dec 09 20:43:28 2015 -0800 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/spi/NodeLIRBuilderTool.java Thu Dec 03 14:26:38 2015 +0100 @@ -44,7 +44,6 @@ import com.oracle.graal.nodes.IfNode; import com.oracle.graal.nodes.Invoke; import com.oracle.graal.nodes.LoopEndNode; -import com.oracle.graal.nodes.PauseNode; import com.oracle.graal.nodes.SafepointNode; import com.oracle.graal.nodes.StructuredGraph; import com.oracle.graal.nodes.ValueNode; @@ -78,8 +77,6 @@ void visitBreakpointNode(BreakpointNode i); - void visitPauseNode(PauseNode i); - void visitFullInfopointNode(FullInfopointNode i); void recordSimpleInfopoint(InfopointReason reason, BytecodePosition position);