Ronald Caesar 3797d014ff engine: add single producer single consumer queue
This allows the main and background thread to communicate with
each other.

Signed-off-by: Ronald Caesar <github43132@proton.me>
2026-05-03 00:57:04 -04:00
2026-04-16 18:21:42 -04:00
2026-04-21 07:26:47 -04:00
2025-12-12 18:29:36 -04:00
2026-02-21 02:52:28 -04:00
2025-12-07 13:09:15 -04:00
2026-03-06 21:12:24 +00:00

The Ballistic JIT Engine

„The world's fastest ARM recompiler“

Overview

This is a rewrite of the dynarmic recompiler, with the goal of fixing its many flaws.

Immediate Goals

  • Support MOVZ, MOVK, MOVN instructions.
  • Support ADD instructions.
  • Implement backend.

Building Ballistic

Install Dependencies

macOS

brew install cmake python3 llvm

Debian/Ubuntu

sudo apt update
sudo apt install build-essential cmake python3 libclang-dev llvm-dev

Fedora

sudo dnf install cmake python3 gcc-c++ clang-devel llvm-devel

Configure CMake

mkdir build
cd build
cmake ..

macOS (If LLVM is not found)

cmake -DCMAKE_PREFIX_PATH=$(brew --prefix llvm) ..

Build Binaries

cmake --build .

The following executables will be created in the build/ directory:

  • libBallistic.a (Static Library)
  • ballistic_cli (Used for Ballistic development)
  • decoder_cli (Instruction decoding tool)
  • cdoc (Documentation generator)
  • test_* (Test suite, run with ctest)

See tools/ for more information on these executables.

S
Description
No description provided
Readme GPL-2.0 72 MiB
Languages
C 37.7%
cpp 36.8%
Lua 21.3%
XSLT 2%
C++ 1.2%
Other 1%