@@ -682,13 +682,15 @@ impl Default for BenchConfig {
682682#[ serde( rename_all = "snake_case" ) ]
683683enum VmExecutionModeArg {
684684 Async ,
685+ Local ,
685686 Threading ,
686687}
687688
688689impl VmExecutionModeArg {
689690 fn as_flag_value ( self ) -> & ' static str {
690691 match self {
691692 VmExecutionModeArg :: Async => "async" ,
693+ VmExecutionModeArg :: Local => "local" ,
692694 VmExecutionModeArg :: Threading => "threading" ,
693695 }
694696 }
@@ -698,11 +700,12 @@ fn parse_vm_execution_mode_arg(value: &str) -> Result<VmExecutionModeArg, String
698700 let normalized = value. trim ( ) . to_ascii_lowercase ( ) ;
699701 match normalized. as_str ( ) {
700702 "async" => Ok ( VmExecutionModeArg :: Async ) ,
703+ "local" | "inline" | "current-task" | "current_task" => Ok ( VmExecutionModeArg :: Local ) ,
701704 "threading" | "blocking" | "spawn-blocking" | "spawn_blocking" => {
702705 Ok ( VmExecutionModeArg :: Threading )
703706 }
704707 _ => Err ( format ! (
705- "invalid --vm-execution-mode: {value} (expected async|threading)"
708+ "invalid --vm-execution-mode: {value} (expected async|local| threading)"
706709 ) ) ,
707710 }
708711}
@@ -3794,7 +3797,7 @@ Options:\n\
37943797 --vm-fuel <UNITS> Enable cooperative VM fuel slices (default: disabled)\n \
37953798 --no-vm-fuel Disable VM fuel slices\n \
37963799 --vm-fuel-check-interval <OPS> Fuel check interval for proxy VM (default: 32)\n \
3797- --vm-execution-mode <MODE> Proxy VM execution mode: async|threading (default: async)\n \
3800+ --vm-execution-mode <MODE> Proxy VM execution mode: async|local| threading (default: async)\n \
37983801 --fuel-latency-sweep Run latency sweeps for fuel and fuel-check-interval (defaults to scenario no_host_calls_program)\n \
37993802 --fuel-latency-fuels <CSV> CSV list for fuel sweep; must be > 0 (default starts at 1)\n \
38003803 --fuel-latency-check-intervals <CSV> CSV list for check-interval sweep; must be > 0 (default starts at 1)\n \
0 commit comments