# HG changeset patch # User Stefan Anzinger # Date 1406756981 25200 # Node ID 4ccd6b6b67808cf6679ce6bee6df4f6f902acf42 # Parent e7b7a5be4d21fa6be87e230888617d391932d9ec [SPARC] Putting safepoint to the right instruction in code. diff -r e7b7a5be4d21 -r 4ccd6b6b6780 graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotSafepointOp.java --- a/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotSafepointOp.java Wed Jul 30 10:39:39 2014 -0700 +++ b/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotSafepointOp.java Wed Jul 30 14:49:41 2014 -0700 @@ -62,12 +62,12 @@ } public static void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm, HotSpotVMConfig config, boolean atReturn, LIRFrameState state, Register scratch) { - final int pos = masm.position(); new Setx(config.safepointPollingAddress, scratch).emit(masm); MarkId.recordMark(crb, atReturn ? MarkId.POLL_RETURN_FAR : MarkId.POLL_FAR); + final int pos = masm.position(); + new Ldx(new SPARCAddress(scratch, 0), g0).emit(masm); if (state != null) { crb.recordInfopoint(pos, state, InfopointReason.SAFEPOINT); } - new Ldx(new SPARCAddress(scratch, 0), g0).emit(masm); } }