Mercurial > hg > graal-jvmci-8
changeset 16640:0058b4af625d
[SPARC] Patch return address fix (cleanup)
author | Stefan Anzinger <stefan.anzinger@gmail.com> |
---|---|
date | Thu, 24 Jul 2014 08:13:55 -0700 |
parents | fd631dda48cc |
children | 422eda5267b3 |
files | graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotPatchReturnAddressOp.java |
diffstat | 1 files changed, 0 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotPatchReturnAddressOp.java Thu Jul 24 08:13:21 2014 -0700 +++ b/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotPatchReturnAddressOp.java Thu Jul 24 08:13:55 2014 -0700 @@ -48,20 +48,7 @@ @Override public void emitCode(CompilationResultBuilder crb, SPARCMacroAssembler masm) { - // FIXME This is non-trivial. On SPARC we need to flush all register windows first before we - // can patch the return address (see: frame::patch_pc). - // new Flushw().emit(masm); - // int frameSize = crb.frameMap.frameSize(); - // new SPARCAssembler.Ldx(new SPARCAddress(o7, 1), g3).emit(masm); - // new Setx(8 * 15 - 1, g4, false).emit(masm); Register addrRegister = asLongReg(address); - // new SPARCAssembler.Ldx(new SPARCAddress(o7, 1), g3).emit(masm); new Sub(addrRegister, Return.PC_RETURN_OFFSET, i7).emit(masm); -// new Save(sp, -3000, sp).emit(masm); -// new Flushw().emit(masm); - // new Stx(g4, new SPARCAddress(fp, o7.number * crb.target.wordSize)).emit(masm); -// new Restore(g0, g0, g0).emit(masm); -// new Flushw().emit(masm); - // new Ldx(new SPARCAddress(g0, 0x123), g0).emit(masm); } }