# HG changeset patch # User Lukas Stadler # Date 1405003489 -7200 # Node ID c51516ebe71c3a9876b64dd18d6950deabf0637b # Parent 9f43efeabb4c8023293a5bd31ad71dfd53b9a9e0 remove value proxies during MacroNode lowering diff -r 9f43efeabb4c -r c51516ebe71c graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java --- a/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java Thu Jul 10 16:45:43 2014 +0200 +++ b/graal/com.oracle.graal.replacements/src/com/oracle/graal/replacements/nodes/MacroNode.java Thu Jul 10 16:44:49 2014 +0200 @@ -128,6 +128,9 @@ */ protected StructuredGraph lowerReplacement(final StructuredGraph replacementGraph, LoweringTool tool) { final PhaseContext c = new PhaseContext(tool.getMetaAccess(), tool.getConstantReflection(), tool.getLowerer(), tool.getReplacements(), tool.assumptions()); + if (!graph().hasValueProxies()) { + new RemoveValueProxyPhase().apply(replacementGraph); + } GuardsStage guardsStage = graph().getGuardsStage(); if (guardsStage.ordinal() >= GuardsStage.FIXED_DEOPTS.ordinal()) { new GuardLoweringPhase().apply(replacementGraph, null);