Mercurial > hg > graal-compiler
comparison graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/MulNode.java @ 17276:ffb974bef674
moved Node valueNumber and valueEquals logic (optionally) to generated nodes
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Wed, 01 Oct 2014 07:39:47 +0200 |
parents | 1738211d4cdb |
children | 393fe459eadc |
comparison
equal
deleted
inserted
replaced
17275:846c059e3ecf | 17276:ffb974bef674 |
---|---|
101 @Override | 101 @Override |
102 public void generate(NodeMappableLIRBuilder builder, ArithmeticLIRGenerator gen) { | 102 public void generate(NodeMappableLIRBuilder builder, ArithmeticLIRGenerator gen) { |
103 Value op1 = builder.operand(getX()); | 103 Value op1 = builder.operand(getX()); |
104 Value op2 = builder.operand(getY()); | 104 Value op2 = builder.operand(getY()); |
105 if (!getY().isConstant() && !BinaryArithmeticNode.livesLonger(this, getY(), builder)) { | 105 if (!getY().isConstant() && !BinaryArithmeticNode.livesLonger(this, getY(), builder)) { |
106 Value op = op1; | 106 Value tmp = op1; |
107 op1 = op2; | 107 op1 = op2; |
108 op2 = op; | 108 op2 = tmp; |
109 } | 109 } |
110 builder.setResult(this, gen.emitMul(op1, op2)); | 110 builder.setResult(this, gen.emitMul(op1, op2)); |
111 } | 111 } |
112 } | 112 } |