JIT: Implements Print support for vixl sim

Everytime I want to quickly output a value for testing I tend to use
Print which didn't work under the simulator.
Give this a quick fix to wire up the jump to the vixl sim.
This commit is contained in:
Ryan Houdek 2023-10-26 18:34:47 -07:00
parent 4045bfd187
commit fe8778bb96

View File

@ -143,7 +143,17 @@ DEF_OP(Print) {
ldr(ARMEmitter::XReg::x3, STATE, offsetof(FEXCore::Core::CpuStateFrame, Pointers.Common.PrintVectorValue));
}
blr(ARMEmitter::Reg::r3);
if (!CTX->Config.DisableVixlIndirectCalls) [[unlikely]] {
if (IsGPR(Op->Value.ID())) {
GenerateIndirectRuntimeCall<void, uint64_t>(ARMEmitter::Reg::r3);
}
else {
GenerateIndirectRuntimeCall<void, uint64_t, uint64_t>(ARMEmitter::Reg::r3);
}
}
else {
blr(ARMEmitter::Reg::r3);
}
FillStaticRegs();
PopDynamicRegsAndLR();