8 Commits

Author SHA1 Message Date
Ramiro Polla 0bd5787b54 [bug] Fixed new_gpw() using kUIntPtr instead of kUInt32 (AArch64) (#510) 2026-03-26 09:20:00 +01:00
kobalicek 64a88ed1d8 [bug] Fixed special cases related to base address and sections
* Always use both base_address and section_offset to check whether
    the current position in code is absolute.
  * Before this work, it was possible in some places to get invalid
    offsets because the section was not .text, but base_address was
    set.
  * Additionally, beacuse the first section is special, it always
    needs the highest possible order, so no section can go before
    it - this ensures compatibility with all past code that only
    used the first section with base_address set and expected that
    the code being emitted will always be absolute.
2026-02-15 17:22:50 +01:00
John Högberg 5fe1940275 [bug] Fix BaseAssembler::embed_label (#508)
AsmJit v1.17 inverted a label validity check, breaking embed_label
2026-02-10 15:31:11 +01:00
Ilya Vinogradov 0cf6eafda2 [bug] Fixed FMOV encoding bug (AArch64) 2025-12-09 14:48:18 +01:00
kobalicek 11f75973ae [bug] Fixed UniCompiler's new_reg to forward to new_reg
It forwarded to new_similar_reg, which would be a compile-time
error.
2025-11-19 22:00:31 +01:00
kobalicek 28295814dd [doc] Documentation and funding update
* Removed github funding links
  * Fixed few documentation links
2025-11-15 10:54:23 +01:00
kobalicek 9888fcf213 [bug] Fixed a bug in Vec::half() that halved to ZMM instead of XMM 2025-11-13 21:50:54 +01:00
kobalicek b56f4176cb Codebase update and improvements, instruction DB update
* Denested src folder to root, renamed testing to asmjit-testing

  * Refactored how headers are included into <asmjit/...> form. This
    is necessary as compilers would never simplify a path once a ..
    appears in include directory - then paths such as ../core/../core
    appeared in asserts, which was ugly

  * Moved support utilities into asmjit/support/... (still included
    by asmjit/core.h for convenience and compatibility)

  * Added CMakePresets.json for making it easy to develop AsmJit

  * Reworked CMakeLists to be shorter and use CMake option(),
    etc... This simplifies it and makes it using more standard
    features

  * ASMJIT_EMBED now creates asmjit_embed INTERFACE library,
    which is accessible via asmjit::asmjit target - this simplifies
    embedding and makes it the same as library targets from a CMake
    perspective

  * Removed ASMJIT_DEPS - this is now provided by cmake target
    aliases - 'asmjit::asmjit' so users should not need this variable

  * Changed meaning of ASMJIT_LIBS - this now contains only AsmJit
    dependencies without asmjit::asmjit target alias. Don't rely on
    ASMJIT_LIBS anymore as it's only used internally

  * Removed ASMJIT_NO_DEPRECATED option - AsmJit is not going
    to provide controllable deprecations in the future

  * Removed ASMJIT_NO_VALIDATION in favor of ASMJIT_NO_INTROSPECTION,
    which now controls query, features, and validation API presence

  * Removed ASMJIT_DIR option - it was never really needed

  * Removed AMX_TRANSPOSE feature from instruction database (X86).
    Intel has removed it as well, so it's a feature that won't
    be siliconized
2025-11-02 22:31:46 +01:00