-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathOptions.java
More file actions
37 lines (34 loc) · 1.53 KB
/
Options.java
File metadata and controls
37 lines (34 loc) · 1.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package com.compilerprogramming.ezlang.compiler;
import java.util.EnumSet;
public enum Options {
ISSA, // Incremental SSA
OPTIMIZE,
SSA_DESTRUCTION_BRIGGS,
SSA_DESTRUCTION_BOISSINOT_NOCOALESCE,
SCCP,
CCP, // constant comparison propagation
REGALLOC,
DUMP_INITIAL_IR,
DUMP_PRE_SSA_DOMTREE,
DUMP_PRE_SSA_DOMFRONTIERS,
DUMP_PRE_SSA_LIVENESS,
DUMP_SSA_IR,
DUMP_SCCP_PREAPPLY,
DUMP_SCCP_POSTAPPLY,
DUMP_CCP_POSTAPPLY,
DUMP_SSA_LIVENESS,
DUMP_SSA_DOMTREE,
DUMP_SSA_TO_CSSA,
DUMP_CSSA_PHI_REMOVAL,
DUMP_POST_SSA_IR,
DUMP_INTERFERENCE_GRAPH,
DUMP_CHAITIN_COALESCE,
DUMP_POST_CHAITIN_IR;
public static final EnumSet<Options> NONE = EnumSet.noneOf(Options.class);
public static final EnumSet<Options> OPT = EnumSet.of(Options.OPTIMIZE,Options.SCCP,Options.CCP,Options.REGALLOC);
public static final EnumSet<Options> OPT_B = EnumSet.of(Options.OPTIMIZE,Options.SCCP,Options.CCP,Options.REGALLOC,Options.SSA_DESTRUCTION_BOISSINOT_NOCOALESCE);
public static final EnumSet<Options> OPT_ISSA = EnumSet.of(Options.OPTIMIZE,Options.ISSA,Options.SCCP,Options.CCP,Options.REGALLOC);
public static final EnumSet<Options> OPT_ISSA_B = EnumSet.of(Options.OPTIMIZE,Options.ISSA,Options.SCCP,Options.CCP,Options.REGALLOC,Options.SSA_DESTRUCTION_BOISSINOT_NOCOALESCE);
public static final EnumSet<Options> VERBOSE = EnumSet.range(DUMP_INITIAL_IR, DUMP_POST_CHAITIN_IR);
public static final EnumSet<Options> OPT_VERBOSE = EnumSet.range(OPTIMIZE, DUMP_POST_CHAITIN_IR);
}