1#![allow(clippy::result_large_err)]
2
3mod compiler;
21pub mod context;
22mod core;
23pub mod error;
24pub mod executor;
25pub mod ffi;
26pub(crate) mod ffi_refs;
27mod ffi_symbols;
28mod foreign_bridge;
29pub mod jit_array;
30pub mod jit_cache;
31pub mod jit_matrix;
32pub mod loop_analysis;
33pub mod mixed_table;
34pub mod mir_compiler;
35mod numeric_compiler;
36mod optimizer;
37pub mod osr_compiler;
38pub mod worker;
39
40pub use context::*;
42pub use error::JitError;
43pub use executor::JITExecutor;
44pub use ffi::jit_kinds::*;
45pub use ffi::value_ffi::*;
46
47pub use shape_ast as ast;
48pub use shape_runtime as runtime;
49
50pub use self::compiler::JITCompiler;
52pub use self::compiler::JitParityEntry;
57pub use self::compiler::JitParityTarget;
58pub use self::compiler::JitPreflightReport;
59pub use self::compiler::build_full_builtin_parity_matrix;
60pub use self::compiler::build_full_opcode_parity_matrix;
61pub use self::compiler::build_program_parity_matrix;
62pub use self::compiler::can_jit_compile;
63pub use self::compiler::get_incomplete_opcodes;
64pub use self::compiler::get_unsupported_opcodes;
65pub use self::compiler::preflight_blob_jit_compatibility;
66pub use self::compiler::preflight_instructions;
67pub use self::compiler::preflight_jit_compatibility;
68pub use self::osr_compiler::{OsrCompilationResult, compile_osr_loop};
69pub use self::worker::JitCompilationBackend;