monkey_asm/lib.rs
1//! AOT arm64 (AArch64) assembly backend for Monkey.
2//!
3//! Design: docs/arm64-asm-backend-design.md. The crate is built twice:
4//! the host build exposes `emitter`/`lower` (pure functions producing `.s`
5//! text) plus the shared `runtime_core`; the aarch64 cross build additionally
6//! provides the `extern "C"` runtime the generated assembly links against.
7
8pub mod emitter;
9pub mod lower;
10pub mod runtime_backend;
11pub mod runtime_core;
12
13#[cfg(not(target_family = "wasm"))]
14pub mod runtime;
15
16#[cfg(test)]
17mod e2e_test;
18#[cfg(test)]
19mod emitter_test;
20#[cfg(test)]
21mod lower_test;
22#[cfg(test)]
23mod runtime_core_test;