# HG changeset patch # User Doug Simon # Date 1351093023 -7200 # Node ID f182f58459fac8c87f09bd9658f6640b1d3d6f4b # Parent d4f5301e9c7b4059f0447626000cd0e736014c44 removed unnecessary boxing diff -r d4f5301e9c7b -r f182f58459fa graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/CompareNode.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/CompareNode.java Wed Oct 24 17:35:44 2012 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/calc/CompareNode.java Wed Oct 24 17:37:03 2012 +0200 @@ -84,24 +84,20 @@ Constant falseConstant = conditionalNode.falseValue().asConstant(); if (falseConstant != null && trueConstant != null && runtime != null) { - Boolean trueResult = cond.foldCondition(trueConstant, constant, runtime, unorderedIsTrue()); - Boolean falseResult = cond.foldCondition(falseConstant, constant, runtime, unorderedIsTrue()); + boolean trueResult = cond.foldCondition(trueConstant, constant, runtime, unorderedIsTrue()); + boolean falseResult = cond.foldCondition(falseConstant, constant, runtime, unorderedIsTrue()); - if (trueResult != null && falseResult != null) { - boolean trueUnboxedResult = trueResult; - boolean falseUnboxedResult = falseResult; - if (trueUnboxedResult == falseUnboxedResult) { - return ConstantNode.forBoolean(trueUnboxedResult, graph()); + if (trueResult == falseResult) { + return ConstantNode.forBoolean(trueResult, graph()); + } else { + if (trueResult) { + assert falseResult == false; + return conditionalNode.condition(); } else { - if (trueUnboxedResult) { - assert falseUnboxedResult == false; - return conditionalNode.condition(); - } else { - assert falseUnboxedResult == true; - negateUsages(); - return conditionalNode.condition(); + assert falseResult == true; + negateUsages(); + return conditionalNode.condition(); - } } } }