36 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.PARSED; |
36 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.PARSED; |
37 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.SCOPE_DEPTHS_COMPUTED; |
37 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.SCOPE_DEPTHS_COMPUTED; |
38 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.SPLIT; |
38 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.SPLIT; |
39 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.SYMBOLS_ASSIGNED; |
39 import static jdk.nashorn.internal.ir.FunctionNode.CompilationState.SYMBOLS_ASSIGNED; |
40 import static jdk.nashorn.internal.runtime.logging.DebugLogger.quote; |
40 import static jdk.nashorn.internal.runtime.logging.DebugLogger.quote; |
41 |
|
42 import java.io.PrintWriter; |
41 import java.io.PrintWriter; |
43 import java.util.ArrayList; |
42 import java.util.ArrayList; |
44 import java.util.EnumSet; |
43 import java.util.EnumSet; |
45 import java.util.HashMap; |
44 import java.util.HashMap; |
46 import java.util.LinkedHashMap; |
45 import java.util.LinkedHashMap; |
47 import java.util.List; |
46 import java.util.List; |
48 import java.util.Map; |
47 import java.util.Map; |
49 import java.util.Map.Entry; |
48 import java.util.Map.Entry; |
50 import java.util.Set; |
49 import java.util.Set; |
51 |
|
52 import jdk.nashorn.internal.AssertsEnabled; |
50 import jdk.nashorn.internal.AssertsEnabled; |
53 import jdk.nashorn.internal.codegen.Compiler.CompilationPhases; |
51 import jdk.nashorn.internal.codegen.Compiler.CompilationPhases; |
54 import jdk.nashorn.internal.ir.FunctionNode; |
52 import jdk.nashorn.internal.ir.FunctionNode; |
55 import jdk.nashorn.internal.ir.FunctionNode.CompilationState; |
53 import jdk.nashorn.internal.ir.FunctionNode.CompilationState; |
56 import jdk.nashorn.internal.ir.LexicalContext; |
54 import jdk.nashorn.internal.ir.LexicalContext; |
625 }); |
623 }); |
626 } |
624 } |
627 |
625 |
628 /** |
626 /** |
629 * Start a compilation phase |
627 * Start a compilation phase |
630 * @param compiler |
628 * @param compiler the compiler to use |
631 * @param functionNode function to compile |
629 * @param functionNode function to compile |
632 * @return function node |
630 * @return function node |
633 */ |
631 */ |
634 protected FunctionNode begin(final Compiler compiler, final FunctionNode functionNode) { |
632 protected FunctionNode begin(final Compiler compiler, final FunctionNode functionNode) { |
635 compiler.getLogger().indent(); |
633 compiler.getLogger().indent(); |