# HG changeset patch # User Stefan Anzinger # Date 1410914983 25200 # Node ID be9c24f5fa2bf4e684143cbce5b9750da872e61b # Parent d980377abc6f29aa4ce31439f011c85f105555b1 [SPARC] Remove unneccessary nops after calls diff -r d980377abc6f -r be9c24f5fa2b graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCCall.java --- a/graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCCall.java Tue Sep 16 17:49:13 2014 -0700 +++ b/graal/com.oracle.graal.lir.sparc/src/com/oracle/graal/lir/sparc/SPARCCall.java Tue Sep 16 17:49:43 2014 -0700 @@ -32,7 +32,6 @@ import com.oracle.graal.asm.sparc.SPARCAssembler.Call; import com.oracle.graal.asm.sparc.SPARCAssembler.Jmpl; import com.oracle.graal.asm.sparc.SPARCMacroAssembler.Jmp; -import com.oracle.graal.asm.sparc.SPARCMacroAssembler.Nop; import com.oracle.graal.asm.sparc.SPARCMacroAssembler.Sethix; import com.oracle.graal.lir.*; import com.oracle.graal.lir.asm.*; @@ -160,30 +159,27 @@ } else { new Call(0).emit(masm); } - new Nop().emit(masm); // delay slot + masm.ensureUniquePC(); int after = masm.position(); crb.recordDirectCall(before, after, callTarget, info); crb.recordExceptionHandlers(after, info); - masm.ensureUniquePC(); } public static void indirectJmp(CompilationResultBuilder crb, SPARCMacroAssembler masm, Register dst, InvokeTarget target) { int before = masm.position(); new Sethix(0L, dst, true).emit(masm); new Jmp(new SPARCAddress(dst, 0)).emit(masm); - new Nop().emit(masm); // delay slot + masm.ensureUniquePC(); int after = masm.position(); crb.recordIndirectCall(before, after, target, null); - masm.ensureUniquePC(); } public static void indirectCall(CompilationResultBuilder crb, SPARCMacroAssembler masm, Register dst, InvokeTarget callTarget, LIRFrameState info) { int before = masm.position(); new Jmpl(dst, 0, o7).emit(masm); - new Nop().emit(masm); // delay slot + masm.ensureUniquePC(); int after = masm.position(); crb.recordIndirectCall(before, after, callTarget, info); crb.recordExceptionHandlers(after, info); - masm.ensureUniquePC(); } }