src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/phases/EconomyAllocationStage.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/phases/EconomyAllocationStage.java	Fri Jul  7 09:31:05 2017
--- new/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/phases/EconomyAllocationStage.java	Fri Jul  7 09:31:05 2017

*** 20,37 **** --- 20,49 ---- * or visit www.oracle.com if you need additional information or have any * questions. */ package org.graalvm.compiler.lir.phases; + import static org.graalvm.compiler.core.common.GraalOptions.TraceRA; + import org.graalvm.compiler.lir.alloc.lsra.LinearScanPhase; + import org.graalvm.compiler.lir.alloc.trace.GlobalLivenessAnalysisPhase; + import org.graalvm.compiler.lir.alloc.trace.TraceBuilderPhase; + import org.graalvm.compiler.lir.alloc.trace.TraceRegisterAllocationPhase; import org.graalvm.compiler.lir.dfa.LocationMarkerPhase; import org.graalvm.compiler.lir.phases.AllocationPhase.AllocationContext; import org.graalvm.compiler.lir.stackslotalloc.SimpleStackSlotAllocator; + import org.graalvm.compiler.options.OptionValues; public class EconomyAllocationStage extends LIRPhaseSuite<AllocationContext> { ! public EconomyAllocationStage(OptionValues options) { + if (TraceRA.getValue(options)) { + appendPhase(new TraceBuilderPhase()); + appendPhase(new GlobalLivenessAnalysisPhase()); + appendPhase(new TraceRegisterAllocationPhase()); + } else { appendPhase(new LinearScanPhase()); + } // build frame map appendPhase(new SimpleStackSlotAllocator()); // currently we mark locations only if we do register allocation

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir/src/org/graalvm/compiler/lir/phases/EconomyAllocationStage.java
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File