# HG changeset patch # User Josef Eisl # Date 1401089571 -7200 # Node ID 9c209d76d72d8e017742ca1384e752dc56f3f94d # Parent 96229f219351b6f53c9cd2a58c1086ff77c5b925 LSRA Optimization: walk basic block boundaries. diff -r 96229f219351 -r 9c209d76d72d graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/OptimizingLinearScanWalker.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/OptimizingLinearScanWalker.java Mon May 26 09:29:51 2014 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/alloc/OptimizingLinearScanWalker.java Mon May 26 09:32:51 2014 +0200 @@ -22,6 +22,9 @@ */ package com.oracle.graal.compiler.alloc; +import com.oracle.graal.compiler.common.cfg.*; +import com.oracle.graal.debug.*; +import com.oracle.graal.debug.Debug.Scope; import com.oracle.graal.options.*; public class OptimizingLinearScanWalker extends LinearScanWalker { @@ -37,4 +40,14 @@ super(allocator, unhandledFixedFirst, unhandledAnyFirst); } + @Override + void walk() { + try (Scope s = Debug.scope("OptimizingLinearScanWalker")) { + for (AbstractBlock block : allocator.sortedBlocks) { + int nextBlock = allocator.getFirstLirInstructionId(block); + walkTo(nextBlock); + } + } + super.walk(); + } }