# asmjit/asmjit

Low-latency machine code generation

Repository: https://github.com/asmjit/asmjit
Canonical: https://ross.abutalabs.com/products/asmjit
Homepage: https://asmjit.com
Language: C++
License: Zlib
License Family: permissive
Topics: x86, x86-64, jit, assembler, asmjit, cpp, compiler, aarch64, code-generation, jit-compilation, x86-x64
Last push: 2026-03-26T08:20:00+00:00

## Health v2 (maintenance only)
Score: 66/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 74, release rhythm 35, longevity 100
- inputs: {"age_days": 4600, "days_push": 160, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4588, forks 595 (observed 2026-08-28T04:08:54.637360+00:00)

## What it is
AsmJit is a lightweight C++ library for low-latency machine code generation supporting X86, X86_64, and AArch64 architectures. It provides a type-safe assembler/builder/compiler API with an optional register allocator, instruction database, and virtual memory management for JIT compilation.

## Use cases
- generate machine code at runtime for a JIT compiler
- assemble x86-64 instructions programmatically in C++
- emit AArch64 code with a register allocator
- build a DSL that compiles to native code
- inspect and validate CPU instructions
- execute dynamically generated native functions

## When to choose
- you need low-latency runtime code generation in C++ with no dependencies
- you want type-safe assembly emission with compile-time semantic checks
- you target both x86/x64 and AArch64 from one API
- you need an optional register allocator instead of hand-assigning registers

## When to avoid
- you need a full optimizing compiler backend like LLVM
- you want to compile from a high-level language rather than emit instructions
- your project is not C/C++ or cannot link native libraries

## Facets
- artifact type: library
- maturity: active
- function: compiler, parser, developer-tools
- domain: compilers, developer-tools, performance, programming-languages
- platform: cpp, cross-platform, windows
- tags: jit, assembler, code-generation, x86, aarch64, machine-code, register-allocator, linux, macos

## Member repositories
- asmjit/asmjit (main) score 66

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:54.637360+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:19:51.542567+00:00, confidence not recorded.
  - readme: https://github.com/asmjit/asmjit (fetched 2026-08-28T04:08:54.637360+00:00, sha d2ed30abf94c)
  - homepage: https://asmjit.com (fetched 2026-08-29T09:05:05.102607+00:00, sha 98606f79fb7f)
  - site_page: https://asmjit.com/doc/index.html (fetched 2026-08-29T09:05:05.112192+00:00, sha c2406a74e52e)
- Data as of 2026-08-30T08:39:29.467469+00:00.
