1pub(super) use super::trace::ValueType;
2pub(super) use super::{CompiledTrace, Guard, GuardKind, Trace, TraceId, TraceOp};
3pub(super) use crate::bytecode::{Function, Value, ValueTag};
4pub(super) use crate::jit;
5pub(super) use crate::Result;
6pub(super) use alloc::vec::Vec;
7pub(super) use dynasmrt::{dynasm, x64::Assembler, DynasmApi, DynasmLabelApi};
8pub(super) use core::mem;
9mod arithmetic;
10mod builder;
11mod comparisons;
12mod guards;
13mod logic;
14mod memory;
15mod registers;
16pub struct JitCompiler {
17 pub(super) ops: Assembler,
18 pub(super) leaked_constants: Vec<*const Value>,
19}
20
21impl Default for JitCompiler {
22 fn default() -> Self {
23 Self::new()
24 }
25}