kobalicek 5134d396bd [abi] Improved ujit integration
* Do not mark UniCompiler emit functions noexcept to make the
    signatures compatible with BackendCompiler
  * Added more functions that wrap BackendCompiler functionality
  * Simplified the way of creating functions to make it more
    compatible with how BackendCompiler creates and finishes
    functions
2025-10-12 21:50:05 +02:00
2025-10-05 17:31:24 +02:00
2025-10-12 21:50:05 +02:00
2025-10-12 21:50:05 +02:00
2020-02-08 10:13:44 +01:00
2025-10-05 17:52:40 +02:00

AsmJit

AsmJit is a library for low-latency machine code generation written in C++.

See asmjit.com page for more details, examples, and documentation.

Project Organization

  • / - Project root
    • src - Source code
      • asmjit - Source code and headers (always point include path in here)
        • core - Core API, backend independent except relocations
        • arm - ARM specific API, designed to be common for both AArch32 and AArch64
        • a64 - AArch64 specific API, used only by AArch64 backends
        • x86 - X86 specific API, used only by X86 and X64 backends
        • ujit - Universal JIT API
    • testing - Unit tests, integration tests, and benchmarks (don't embed in your project)
      • commons - Common utilities shared between tests and benchmarks
      • bench - Benchmarks
      • tests - Unit tests and integration tests
    • tools - Tools used to re-regenerate generated files (instruction DB, enum strings)

Roadmap

  • See Roadmap page for more details

Contributing

Documentation

Development & Testing

  • Basic configure scripts that invoke cmake are provided in project root.

Breaking Changes

Breaking the API is sometimes inevitable, what to do?

Support

  • AsmJit project has both community and commercial support, see AsmJit's Support Page
  • Organizations that rely on AsmJit should support the development!

Notable Donors List:

Authors & Maintainers

Languages
C++ 93.2%
JavaScript 3.3%
C 3.2%
CMake 0.3%