Mercurial > hg > graal-compiler
changeset 11859:ee88780346a4
Fix bug in constant folding.
author | Roland Schatz <roland.schatz@oracle.com> |
---|---|
date | Wed, 02 Oct 2013 14:57:37 +0200 |
parents | cdff87c89c5f |
children | 762dc2f23d1c 44257a9160f1 |
files | graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatAddNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatDivNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatMulNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatRemNode.java graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatSubNode.java |
diffstat | 5 files changed, 10 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatAddNode.java Wed Oct 02 13:28:17 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatAddNode.java Wed Oct 02 14:57:37 2013 +0200 @@ -37,10 +37,10 @@ public Constant evalConst(Constant... inputs) { assert inputs.length == 2; if (kind() == Kind.Float) { - return Constant.forFloat(x().asConstant().asFloat() + y().asConstant().asFloat()); + return Constant.forFloat(inputs[0].asFloat() + inputs[1].asFloat()); } else { assert kind() == Kind.Double; - return Constant.forDouble(x().asConstant().asDouble() + y().asConstant().asDouble()); + return Constant.forDouble(inputs[0].asDouble() + inputs[1].asDouble()); } }
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatDivNode.java Wed Oct 02 13:28:17 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatDivNode.java Wed Oct 02 14:57:37 2013 +0200 @@ -37,10 +37,10 @@ public Constant evalConst(Constant... inputs) { assert inputs.length == 2; if (kind() == Kind.Float) { - return Constant.forFloat(x().asConstant().asFloat() / y().asConstant().asFloat()); + return Constant.forFloat(inputs[0].asFloat() / inputs[1].asFloat()); } else { assert kind() == Kind.Double; - return Constant.forDouble(x().asConstant().asDouble() / y().asConstant().asDouble()); + return Constant.forDouble(inputs[0].asDouble() / inputs[1].asDouble()); } }
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatMulNode.java Wed Oct 02 13:28:17 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatMulNode.java Wed Oct 02 14:57:37 2013 +0200 @@ -37,10 +37,10 @@ public Constant evalConst(Constant... inputs) { assert inputs.length == 2; if (kind() == Kind.Float) { - return Constant.forFloat(x().asConstant().asFloat() * y().asConstant().asFloat()); + return Constant.forFloat(inputs[0].asFloat() * inputs[1].asFloat()); } else { assert kind() == Kind.Double; - return Constant.forDouble(x().asConstant().asDouble() * y().asConstant().asDouble()); + return Constant.forDouble(inputs[0].asDouble() * inputs[1].asDouble()); } }
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatRemNode.java Wed Oct 02 13:28:17 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatRemNode.java Wed Oct 02 14:57:37 2013 +0200 @@ -37,10 +37,10 @@ public Constant evalConst(Constant... inputs) { assert inputs.length == 2; if (kind() == Kind.Float) { - return Constant.forFloat(x().asConstant().asFloat() % y().asConstant().asFloat()); + return Constant.forFloat(inputs[0].asFloat() % inputs[1].asFloat()); } else { assert kind() == Kind.Double; - return Constant.forDouble(x().asConstant().asDouble() % y().asConstant().asDouble()); + return Constant.forDouble(inputs[0].asDouble() % inputs[1].asDouble()); } }
--- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatSubNode.java Wed Oct 02 13:28:17 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/FloatSubNode.java Wed Oct 02 14:57:37 2013 +0200 @@ -37,10 +37,10 @@ public Constant evalConst(Constant... inputs) { assert inputs.length == 2; if (kind() == Kind.Float) { - return Constant.forFloat(x().asConstant().asFloat() - y().asConstant().asFloat()); + return Constant.forFloat(inputs[0].asFloat() - inputs[1].asFloat()); } else { assert kind() == Kind.Double; - return Constant.forDouble(x().asConstant().asDouble() - y().asConstant().asDouble()); + return Constant.forDouble(inputs[0].asDouble() - inputs[1].asDouble()); } }