No description
04cfab01ba
c2cb5ec49 github: Faster CI 1ed4284bc code_block: Correct headers git-subtree-dir: externals/oaknut git-subtree-split: c2cb5ec49aa4a0748172a6a93df6a0fb17368183 |
||
---|---|---|
.github/workflows | ||
include/oaknut | ||
tests | ||
.clang-format | ||
.gitignore | ||
CMakeLists.txt | ||
LICENSE | ||
README.md |
Oaknut
A C++20 assembler for AArch64 (ARMv8.0)
Oaknut is a header-only library that allows one to dynamically assemble code in-memory at runtime.
Usage
Simple example:
using EmittedFunction = int (*)();
EmittedFunction EmitExample(oaknut::CodeGenerator& code, int value)
{
using namespace oaknut::util;
EmittedFunction result = code.ptr<EmittedFunction>();
code.MOVZ(W0, value);
code.RET();
return result;
}
License
This project is MIT licensed.