changeset 17202:dfe30d721f3f

simplify WriteNode.generate
author Lukas Stadler <lukas.stadler@oracle.com>
date Wed, 24 Sep 2014 18:39:13 +0200
parents 3f176485d807
children b15a7b70523f
files graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java
diffstat 1 files changed, 1 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java	Wed Sep 24 15:28:14 2014 +0200
+++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/WriteNode.java	Wed Sep 24 18:39:13 2014 +0200
@@ -63,16 +63,8 @@
     @Override
     public void generate(NodeLIRBuilderTool gen) {
         Value address = location().generateAddress(gen, gen.getLIRGeneratorTool(), gen.operand(object()));
-        // It's possible a constant was forced for other usages so inspect the value directly and
-        // use a constant if it can be directly stored.
-        Value v;
-        if (value().isConstant() && gen.getLIRGeneratorTool().canStoreConstant(value().asConstant())) {
-            v = value().asConstant();
-        } else {
-            v = gen.operand(value());
-        }
         LIRKind writeKind = gen.getLIRGeneratorTool().getLIRKind(value().stamp());
-        gen.getLIRGeneratorTool().emitStore(writeKind, address, v, gen.state(this));
+        gen.getLIRGeneratorTool().emitStore(writeKind, address, gen.operand(value()), gen.state(this));
     }
 
     @Override