MimIR
MimIR is my Intermediate Representation
Loading...
Searching...
No Matches
mim::Flags Struct Reference

Compiler switches that must be saved and looked up in later phases of compilation. More...

#include <mim/flags.h>

Public Types

enum class  Profile {
  None ,
  Summary ,
  Tree ,
  Trace
}
 How (if at all) to report Phase runtimes;. More...

Public Attributes

uint64_t scalarize_threshold = 32
uint32_t max_fp_iters = 1024
bool ascii = false
bool dump_recursive = false
bool bootstrap = false
bool force_load = false
Profile profile = Profile::None
bool aggressive_lam_spec = false
bool reeval_breakpoints = false
bool trace_gids = false
bool break_on_error = false
bool break_on_warn = false
bool break_on_alpha = false

Detailed Description

Compiler switches that must be saved and looked up in later phases of compilation.

See also
Command-Line Reference

Definition at line 11 of file flags.h.

Member Enumeration Documentation

◆ Profile

enum class mim::Flags::Profile
strong

How (if at all) to report Phase runtimes;.

See also
Profiler.
Enumerator
None 

No profiling.

Summary 

Flat table aggregated by Phase name.

Tree 

Indented tree preserving the order in which Phasees ran.

Trace 

chrome://tracing compatible output.

Definition at line 13 of file flags.h.

Member Data Documentation

◆ aggressive_lam_spec

bool mim::Flags::aggressive_lam_spec = false

Definition at line 28 of file flags.h.

◆ ascii

bool mim::Flags::ascii = false

Definition at line 23 of file flags.h.

◆ bootstrap

bool mim::Flags::bootstrap = false

Definition at line 25 of file flags.h.

Referenced by mim::ast::load_plugins().

◆ break_on_alpha

bool mim::Flags::break_on_alpha = false

Definition at line 34 of file flags.h.

◆ break_on_error

bool mim::Flags::break_on_error = false

Definition at line 32 of file flags.h.

◆ break_on_warn

bool mim::Flags::break_on_warn = false

Definition at line 33 of file flags.h.

◆ dump_recursive

bool mim::Flags::dump_recursive = false

Definition at line 24 of file flags.h.

◆ force_load

bool mim::Flags::force_load = false

Definition at line 26 of file flags.h.

◆ max_fp_iters

uint32_t mim::Flags::max_fp_iters = 1024

Definition at line 21 of file flags.h.

Referenced by mim::PhaseMan::start(), and mim::RWPhase::start().

◆ profile

Profile mim::Flags::profile = Profile::None

Definition at line 27 of file flags.h.

Referenced by mim::Phase::run().

◆ reeval_breakpoints

bool mim::Flags::reeval_breakpoints = false

Definition at line 30 of file flags.h.

◆ scalarize_threshold

uint64_t mim::Flags::scalarize_threshold = 32

Definition at line 20 of file flags.h.

Referenced by mim::Def::num_tprojs().

◆ trace_gids

bool mim::Flags::trace_gids = false

Definition at line 31 of file flags.h.


The documentation for this struct was generated from the following file: