# HG changeset patch # User Stefan Anzinger # Date 1432288348 -7200 # Node ID 6b59a0656841eb421a1fe3b80857a7af5f399525 # Parent 95647f646143a723b402ccd8ebf3a102e2f901b0 [SPARC] Make Membar delayable diff -r 95647f646143 -r 6b59a0656841 graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCMove.java --- a/graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCMove.java Fri May 22 11:41:03 2015 +0200 +++ b/graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCMove.java Fri May 22 11:52:28 2015 +0200 @@ -402,7 +402,7 @@ } } - public static final class MembarOp extends SPARCLIRInstruction { + public static final class MembarOp extends SPARCLIRInstruction implements SPARCTailDelayedLIRInstruction { public static final LIRInstructionClass TYPE = LIRInstructionClass.create(MembarOp.class); private final int barriers; @@ -414,6 +414,7 @@ @Override public void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm) { + delayedControlTransfer.emitControlTransfer(crb, masm); masm.membar(barriers); } }