# HG changeset patch # User Roland Schatz # Date 1378124141 -7200 # Node ID fc3a6fb4cf3da49eb15ade37a5a32bfa52f4ec19 # Parent 94ec1122be13a0406ec42797a63f3055585da97c Support for PlatformKind in PhiResolver. diff -r 94ec1122be13 -r fc3a6fb4cf3d graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java Mon Sep 02 14:08:49 2013 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/LIRGenerator.java Mon Sep 02 14:15:41 2013 +0200 @@ -452,12 +452,16 @@ append(new JumpOp(getLIRBlock(merge))); } + protected PlatformKind getPhiKind(PhiNode phi) { + return phi.kind(); + } + private Value operandForPhi(PhiNode phi) { assert phi.type() == PhiType.Value : "wrong phi type: " + phi; Value result = operand(phi); if (result == null) { // allocate a variable for this phi - Variable newOperand = newVariable(phi.kind()); + Variable newOperand = newVariable(getPhiKind(phi)); setResult(phi, newOperand); return newOperand; } else { diff -r 94ec1122be13 -r fc3a6fb4cf3d graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/PhiResolver.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/PhiResolver.java Mon Sep 02 14:08:49 2013 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/gen/PhiResolver.java Mon Sep 02 14:15:41 2013 +0200 @@ -230,7 +230,7 @@ private void moveToTemp(Value src) { assert isIllegal(temp); - temp = gen.newVariable(src.getKind()); + temp = gen.newVariable(src.getPlatformKind()); emitMove(temp, src); }