Class IROptimisation

java.lang.Object
org.ek9lang.compiler.CompilerPhase
org.ek9lang.compiler.phase9.IROptimisation
All Implemented Interfaces:
BiFunction<Workspace, CompilerFlags, CompilationPhaseResult>

public class IROptimisation extends CompilerPhase
SINGLE THREADED. At this point IR is complete and viable. This phase can now optimise the IR prior to any code generation. The optimization level can be accessed via compilerFlags.getOptimizationLevel() which returns: - OptimizationLevel.O0 - No optimization (fast compile, maximum debuggability) - OptimizationLevel.O2 - Minimal optimization (balanced - default) - OptimizationLevel.O3 - Full optimization (maximum performance)