Phase 11-12: LLVM backend initial, semantics layer, plugin unification
Major changes: - LLVM backend initial implementation (compiler.rs, llvm mode) - Semantics layer integration in interpreter (operators.rs) - Phase 12 plugin architecture revision (3-layer system) - Builtin box removal preparation - MIR instruction set documentation (26→Core-15 migration) - Cross-backend testing infrastructure - Await/nowait syntax support New features: - LLVM AOT compilation support (--backend llvm) - Semantics layer for interpreter→VM flow - Tri-backend smoke tests - Plugin-only registry mode Bug fixes: - Interpreter plugin box arithmetic operations - Branch test returns incorrect values Documentation: - Phase 12 README.md updated with new plugin architecture - Removed obsolete NYIR proposals - Added LLVM test programs documentation Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@ -47,6 +47,8 @@ pub struct CliConfig {
|
||||
pub emit_cfg: Option<String>,
|
||||
// Verbose CLI
|
||||
pub cli_verbose: bool,
|
||||
// Tasks
|
||||
pub run_task: Option<String>,
|
||||
}
|
||||
|
||||
impl CliConfig {
|
||||
@ -277,6 +279,12 @@ impl CliConfig {
|
||||
.value_name("DOT_FILE")
|
||||
.help("Emit JIT CFG as DOT to file (equivalent to setting NYASH_JIT_DOT)")
|
||||
)
|
||||
.arg(
|
||||
Arg::new("run-task")
|
||||
.long("run-task")
|
||||
.value_name("NAME")
|
||||
.help("Run a named task defined in nyash.toml [tasks]")
|
||||
)
|
||||
}
|
||||
|
||||
/// Convert ArgMatches to CliConfig
|
||||
@ -316,6 +324,7 @@ impl CliConfig {
|
||||
jit_only: matches.get_flag("jit-only"),
|
||||
jit_direct: matches.get_flag("jit-direct"),
|
||||
cli_verbose: matches.get_flag("verbose"),
|
||||
run_task: matches.get_one::<String>("run-task").cloned(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user