Commit Graph

3 Commits

Author SHA1 Message Date
kobalicek
9e39b1e814 Added basic abstractions to CondCode, Gp, and Vec
* Each architecture now provides r32() and r64() functions for
    register casting
  * Each architecture now provides v128() function for register
    casting, returning just Vec to make writing cross platform
    code easier
  * Added some basic condition code abstractions so it can be used
    interchangeably across architectures
  * Added back unlicense to asmjit database (now it's dual licensed)
2024-02-10 16:43:40 +01:00
kobalicek
b25df5554d [ABI] Updated instruction DB, operands, and minor API changes
This changeset contains an updated instruction database that brings
ARM32 instructions for the first time. It also updates instruction
database tooling especially for ARM64, which will also be used by
ARM32 generator.

Additionally, new operan has been added, which represents a register
list as used by ARM32 instruction set.

Other minor changes are related to ARM - some stuff had to be moved
to a64 namespace from arm namespace as it's incompatible between
32-bit and 64-bit ISA.
2023-12-26 23:28:40 +01:00
kobalicek
e4e61c4f15 [ABI] Completely reworked instruction DB and generators
* Instruction database is now part of asmjit to keep it in sync
  * X86/X64 ISA data has been reworked, now in a proper JSON format
  * ARM32 ISA data has been added (currently only DB, support later)
  * ARM64 ISA data has been added
  * ARM features detection has been updated
2023-09-10 09:55:17 +02:00