[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
This commit is contained in:
kobalicek
2023-09-10 00:09:34 +02:00
parent 8e2f4de484
commit e4e61c4f15
60 changed files with 28000 additions and 10671 deletions

View File

@@ -670,9 +670,9 @@ static void generateSseSequenceInternal(
cc.cvtpi2ps(xmmA, m);
cc.cvtsi2ss(xmmA, m);
cc.cvtss2si(gpd, m);
if (cc.is64Bit()) cc.cvtss2si(gpq, m);
cc.cvtss2si(gpz, m);
cc.cvttss2si(gpd, m);
if (cc.is64Bit()) cc.cvttss2si(gpq, m);
cc.cvttss2si(gpz, m);
cc.divps(xmmA, m);
cc.divss(xmmA, m);
cc.maxps(xmmA, m);
@@ -729,16 +729,16 @@ static void generateSseSequenceInternal(
cc.cvtps2dq(xmmA, m);
cc.cvtps2pd(xmmA, m);
cc.cvtsd2si(gpd, m);
if (cc.is64Bit()) cc.cvtsd2si(gpq, m);
cc.cvtsd2si(gpz, m);
cc.cvtsd2ss(xmmA, m);
cc.cvtsi2sd(xmmA, m);
cc.cvtss2sd(xmmA, m);
cc.cvtss2si(gpd, m);
if (cc.is64Bit()) cc.cvtss2si(gpq, m);
cc.cvtss2si(gpz, m);
cc.cvttpd2dq(xmmA, m);
cc.cvttps2dq(xmmA, m);
cc.cvttsd2si(gpd, m);
if (cc.is64Bit()) cc.cvttsd2si(gpq, m);
cc.cvttsd2si(gpz, m);
cc.divpd(xmmA, m);
cc.divsd(xmmA, m);
cc.maxpd(xmmA, m);