# HG changeset patch # User Gilles Duboscq # Date 1389963536 -3600 # Node ID 076e233aec3fcf202682d99b7fe08b7d54725acf # Parent e70abc187ff3c9960946e77461a3dbf2dc64b47b Fix AMD64HotSpotLIRGenerator.moveValueToThread diff -r e70abc187ff3 -r 076e233aec3f graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotLIRGenerator.java --- a/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotLIRGenerator.java Fri Jan 17 11:24:04 2014 +0200 +++ b/graal/com.oracle.graal.hotspot.amd64/src/com/oracle/graal/hotspot/amd64/AMD64HotSpotLIRGenerator.java Fri Jan 17 13:58:56 2014 +0100 @@ -394,14 +394,8 @@ private void moveValueToThread(Value v, int offset) { Kind wordKind = getProviders().getCodeCache().getTarget().wordKind; RegisterValue thread = getProviders().getRegisters().getThreadRegister().asValue(wordKind); - AMD64AddressValue pendingDeoptAddress = new AMD64AddressValue(v.getKind(), thread, offset); - if (v instanceof Constant && !getCodeCache().needsDataPatch((Constant) v)) { - Constant constantActionAndReason = (Constant) v; - assert !getCodeCache().needsDataPatch(constantActionAndReason); - append(new StoreConstantOp(constantActionAndReason.getKind(), pendingDeoptAddress, constantActionAndReason, null)); - } else { - append(new StoreOp(v.getKind(), pendingDeoptAddress, load(v), null)); - } + AMD64AddressValue address = new AMD64AddressValue(v.getKind(), thread, offset); + emitStore(v.getKind(), address, v, null); } @Override diff -r e70abc187ff3 -r 076e233aec3f graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java Fri Jan 17 11:24:04 2014 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/VMToCompilerImpl.java Fri Jan 17 13:58:56 2014 +0100 @@ -23,15 +23,14 @@ package com.oracle.graal.hotspot.bridge; import static com.oracle.graal.compiler.GraalDebugConfig.*; -import static com.oracle.graal.graph.UnsafeAccess.*; import static com.oracle.graal.hotspot.CompileTheWorld.Options.*; -import static com.oracle.graal.hotspot.HotSpotGraalRuntime.*; import java.io.*; import java.lang.reflect.*; import java.security.*; import java.util.*; import java.util.concurrent.*; + import com.oracle.graal.api.meta.*; import com.oracle.graal.compiler.*; import com.oracle.graal.compiler.CompilerThreadFactory.DebugConfigAccess;