2025-08-13 05:59:10 +00:00
|
|
|
/*!
|
|
|
|
|
* Backend module - Different execution backends for MIR
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
pub mod vm;
|
2025-08-18 23:36:40 +09:00
|
|
|
pub mod vm_phi;
|
2025-08-25 15:50:49 +09:00
|
|
|
pub mod vm_instructions;
|
2025-08-26 00:48:09 +09:00
|
|
|
pub mod vm_values;
|
|
|
|
|
pub mod vm_boxcall;
|
2025-08-26 00:58:57 +09:00
|
|
|
pub mod vm_stats;
|
2025-08-26 04:34:14 +09:00
|
|
|
// Phase 9.78h: VM split scaffolding (control_flow/dispatch/frame)
|
|
|
|
|
pub mod control_flow;
|
|
|
|
|
pub mod dispatch;
|
|
|
|
|
pub mod frame;
|
2025-08-27 17:06:46 +09:00
|
|
|
pub mod gc_helpers;
|
2025-08-19 16:56:44 +09:00
|
|
|
|
|
|
|
|
#[cfg(feature = "wasm-backend")]
|
2025-08-13 13:05:49 +00:00
|
|
|
pub mod wasm;
|
2025-08-19 16:56:44 +09:00
|
|
|
#[cfg(feature = "wasm-backend")]
|
2025-08-14 04:38:20 +00:00
|
|
|
pub mod aot;
|
2025-08-13 05:59:10 +00:00
|
|
|
|
2025-08-18 09:14:39 +00:00
|
|
|
#[cfg(feature = "llvm")]
|
|
|
|
|
pub mod llvm;
|
|
|
|
|
|
2025-08-13 13:05:49 +00:00
|
|
|
pub use vm::{VM, VMError, VMValue};
|
2025-08-19 16:56:44 +09:00
|
|
|
|
|
|
|
|
#[cfg(feature = "wasm-backend")]
|
2025-08-14 04:38:20 +00:00
|
|
|
pub use wasm::{WasmBackend, WasmError};
|
2025-08-19 16:56:44 +09:00
|
|
|
#[cfg(feature = "wasm-backend")]
|
2025-08-18 09:14:39 +00:00
|
|
|
pub use aot::{AotBackend, AotError, AotConfig, AotStats};
|
|
|
|
|
|
|
|
|
|
#[cfg(feature = "llvm")]
|
2025-08-26 00:48:09 +09:00
|
|
|
pub use llvm::{compile_and_execute as llvm_compile_and_execute, compile_to_object as llvm_compile_to_object};
|