# HG changeset patch # User Josef Eisl # Date 1423128853 -3600 # Node ID 247419385312b92c6bf1bbd80656d89093371cf4 # Parent ac9ad302e12f6d5f109f8a7fb717e7a920f5a6dc [SPARC] do not create superfluous copies of variables. diff -r ac9ad302e12f -r 247419385312 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 Thu Feb 05 15:19:40 2015 +0100 +++ b/graal/com.oracle.graal.compiler.sparc/src/com/oracle/graal/compiler/sparc/SPARCLIRGenerator.java Thu Feb 05 10:34:13 2015 +0100 @@ -278,11 +278,9 @@ JavaConstant c = asConstant(value); if (c.isNull() || SPARCAssembler.isSimm11(c)) { return value; - } else { - return load(c); } } - return emitMove(value); + return load(value); } @Override diff -r ac9ad302e12f -r 247419385312 graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotLIRGenerator.java --- a/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotLIRGenerator.java Thu Feb 05 15:19:40 2015 +0100 +++ b/graal/com.oracle.graal.hotspot.sparc/src/com/oracle/graal/hotspot/sparc/SPARCHotSpotLIRGenerator.java Thu Feb 05 10:34:13 2015 +0100 @@ -172,7 +172,7 @@ LIRKind wordKind = LIRKind.value(getProviders().getCodeCache().getTarget().wordKind); RegisterValue thread = getProviders().getRegisters().getThreadRegister().asValue(wordKind); SPARCAddressValue pendingDeoptAddress = new SPARCAddressValue(wordKind, thread, offset); - append(new StoreOp(v.getKind(), pendingDeoptAddress, emitMove(v), null)); + append(new StoreOp(v.getKind(), pendingDeoptAddress, load(v), null)); } @Override