Skip to content
forked from asmjit/asmjit

Complete x86/x64 JIT and Remote Assembler for C++

License

Notifications You must be signed in to change notification settings

casm-lang/libasmjit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

  • Core:
    • Add support for user external buffers in CodeBuffer / CodeHolder.
    • Register allocator doesn't understand register pairs, affected instructions:
      • v4fmaddps, v4fmaddss, v4fnmaddps, v4fnmaddss
      • vp4dpwssd, vp4dpwssds
      • vp2intersectd, vp2intersectq
  • Ports:
    • ARM/Thumb/AArch64 support.

Support

Notable Donors List:

Authors & Maintainers

About

Complete x86/x64 JIT and Remote Assembler for C++

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 92.9%
  • C 4.3%
  • JavaScript 2.4%
  • Other 0.4%