vm(hako): add v1 reader/dispatcher (flagged), commonize mir_call handler, share block scan; smokes: add v1 hakovm canary; docs: 20.37/20.38 plans, OOB policy; runner: v1 hakovm toggle; include SKIP summary
This commit is contained in:
@ -41,6 +41,7 @@ pub fn build_command() -> Command {
|
||||
.arg(Arg::new("parser").long("parser").value_name("{rust|ny}").help("Choose parser: 'rust' (default) or 'ny' (direct v0 bridge)"))
|
||||
.arg(Arg::new("ny-parser-pipe").long("ny-parser-pipe").help("Read Ny JSON IR v0 from stdin and execute via MIR Interpreter").action(clap::ArgAction::SetTrue))
|
||||
.arg(Arg::new("json-file").long("json-file").value_name("FILE").help("Read Ny JSON IR v0 from a file and execute via MIR Interpreter"))
|
||||
.arg(Arg::new("mir-json-file").long("mir-json-file").value_name("FILE").help("[Diagnostic] Read MIR JSON v0 from a file and perform minimal validation/inspection (experimental)") )
|
||||
.arg(Arg::new("emit-mir-json").long("emit-mir-json").value_name("FILE").help("Emit MIR JSON v0 to file and exit"))
|
||||
.arg(Arg::new("program-json-to-mir").long("program-json-to-mir").value_name("FILE").help("Convert Program(JSON v0) to MIR(JSON) and exit (use with --json-file)"))
|
||||
.arg(Arg::new("emit-exe").long("emit-exe").value_name("FILE").help("Emit native executable via ny-llvmc and exit"))
|
||||
@ -140,6 +141,7 @@ pub fn from_matches(matches: &ArgMatches) -> CliConfig {
|
||||
parser_ny: matches.get_one::<String>("parser").map(|s| s == "ny").unwrap_or(false),
|
||||
ny_parser_pipe: matches.get_flag("ny-parser-pipe"),
|
||||
json_file: matches.get_one::<String>("json-file").cloned(),
|
||||
mir_json_file: matches.get_one::<String>("mir-json-file").cloned(),
|
||||
build_path: matches.get_one::<String>("build").cloned(),
|
||||
build_app: matches.get_one::<String>("build-app").cloned(),
|
||||
build_out: matches.get_one::<String>("build-out").cloned(),
|
||||
|
||||
@ -68,6 +68,7 @@ pub struct ParserPipeConfig {
|
||||
pub parser_ny: bool,
|
||||
pub ny_parser_pipe: bool,
|
||||
pub json_file: Option<String>,
|
||||
pub mir_json_file: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
|
||||
@ -50,6 +50,7 @@ pub struct CliConfig {
|
||||
pub parser_ny: bool,
|
||||
pub ny_parser_pipe: bool,
|
||||
pub json_file: Option<String>,
|
||||
pub mir_json_file: Option<String>,
|
||||
pub gc_mode: Option<String>,
|
||||
pub build_path: Option<String>,
|
||||
pub build_app: Option<String>,
|
||||
@ -128,6 +129,7 @@ impl CliConfig {
|
||||
parser_ny: self.parser_ny,
|
||||
ny_parser_pipe: self.ny_parser_pipe,
|
||||
json_file: self.json_file.clone(),
|
||||
mir_json_file: self.mir_json_file.clone(),
|
||||
},
|
||||
gc_mode: self.gc_mode.clone(),
|
||||
compile_wasm: self.compile_wasm,
|
||||
@ -184,6 +186,7 @@ impl Default for CliConfig {
|
||||
parser_ny: false,
|
||||
ny_parser_pipe: false,
|
||||
json_file: None,
|
||||
mir_json_file: None,
|
||||
build_path: None,
|
||||
build_app: None,
|
||||
build_out: None,
|
||||
|
||||
Reference in New Issue
Block a user