[ABI] Accumulated API/ABI changes

* Renamed all eq() methods to equals() (consistency) (ABI)
  * Reorganized some X86 instructions in X86 database
  * Properly detect RISC-V CPU at compile time (Environment)
  * Removed CallConvId::kNone in favor of defaulting to kCDecl (ABI)
  * CallConvId::kHost is now alias to CallConvId::kCDecl (ABI)
  * Added FloatABI to Environment to disginguish between softfloat
    and hardfloat
  * Added more AArch64 CPU features and their detection (ABI)
  * Because of CallConvId changes it's now possible to run
    compiler tests on 32-bit ARM (fixes a bug in test cases)
  * Added QEMU to CI build matrix to test different architectures
This commit is contained in:
kobalicek
2024-01-01 20:15:00 +01:00
parent a465fe71ab
commit 3772c447ca
31 changed files with 1828 additions and 1041 deletions

View File

@@ -170,7 +170,7 @@ static void generateSseAlphaBlend(asmjit::BaseEmitter& emitter, bool emitPrologE
if (emitPrologEpilog) {
FuncDetail func;
func.init(FuncSignature::build<void, void*, const void*, size_t>(CallConvId::kHost), cc.environment());
func.init(FuncSignature::build<void, void*, const void*, size_t>(), cc.environment());
FuncFrame frame;
frame.init(func);
@@ -202,7 +202,7 @@ static void generateSseAlphaBlend(asmjit::BaseEmitter& emitter, bool emitPrologE
if (emitPrologEpilog) {
FuncDetail func;
func.init(FuncSignature::build<void, void*, const void*, size_t>(CallConvId::kHost), cc.environment());
func.init(FuncSignature::build<void, void*, const void*, size_t>(), cc.environment());
FuncFrame frame;
frame.init(func);
@@ -242,7 +242,7 @@ static void generateSseAlphaBlend(asmjit::BaseEmitter& emitter, bool emitPrologE
Xmm v6 = cc.newXmm("v6");
Xmm v7 = cc.newXmm("v7");
FuncNode* funcNode = cc.addFunc(FuncSignature::build<void, void*, const void*, size_t>(CallConvId::kHost));
FuncNode* funcNode = cc.addFunc(FuncSignature::build<void, void*, const void*, size_t>());
funcNode->setArg(0, dst);
funcNode->setArg(1, src);
funcNode->setArg(2, i);