kobalicek b25df5554d [ABI] Updated instruction DB, operands, and minor API changes
This changeset contains an updated instruction database that brings
ARM32 instructions for the first time. It also updates instruction
database tooling especially for ARM64, which will also be used by
ARM32 generator.

Additionally, new operan has been added, which represents a register
list as used by ARM32 instruction set.

Other minor changes are related to ARM - some stuff had to be moved
to a64 namespace from arm namespace as it's incompatible between
32-bit and 64-bit ISA.
2023-12-26 23:28:40 +01:00
2020-02-08 10:13:44 +01:00

AsmJit

AsmJit is a lightweight library for machine code generation written in C++ language.

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

Documentation

Breaking Changes

Breaking the API is sometimes inevitable, what to do?

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, used only by ARM and AArch64 backends.
        • x86 - X86 specific API, used only by X86 and X64 backends.
    • test - Unit and integration tests (don't embed in your project).
    • tools - Tools used for configuring, documenting, and generating files.

TODO

  • Ports:
    • 32-bit ARM/Thumb port.
    • 64-bit ARM (AArch64) port.
    • RISC-V port.

Support

Notable Donors List:

Authors & Maintainers

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