JIT stuff that I do not know how to comment

This commit is contained in:
irisz64
2025-12-18 11:20:56 +01:00
parent 70edba4ced
commit c2d6d5a8a9
6 changed files with 78 additions and 40 deletions

View File

@@ -130,7 +130,7 @@ int JIT::Step() {
blockCache[upperIndex].resize(kLowerSize);
}
trace("[JIT]: Compiling block @ 0x{:016X}:", blockPC);
info("[JIT]: Compiling block @ 0x{:016X}:", blockPC);
const auto blockInfo = code.getCurr();
const auto block = code.getCurr<BlockFn>();
blockCache[upperIndex][lowerIndex] = block;
@@ -147,7 +147,7 @@ int JIT::Step() {
code.mov(code.rbp, reinterpret_cast<uintptr_t>(this)); // Load context pointer
//cs_insn *insn;
trace("\tMIPS code (guest PC = 0x{:016X}):", blockPC);
info("\tMIPS code (guest PC = 0x{:016X}):", blockPC);
while (!instrEndsBlock) {
// CheckCompareInterrupt();
paddr = 0;
@@ -180,11 +180,10 @@ int JIT::Step() {
blockPC = blockNextPC;
blockNextPC += 4;
info("{}", Disassembler::GetInstance().DisassembleSimple(paddr, instruction).full);
if((instrEndsBlock = InstrEndsBlock(instruction)))
continue;
trace("{}", Disassembler::GetInstance().DisassembleSimple(paddr, instruction).full);
/*if(ShouldServiceInterrupt()) {
regs.cop0.FireException(ExceptionCode::Interrupt, 0, blockPC);
return 1;
@@ -243,4 +242,8 @@ int JIT::Step() {
return block();
}
#endif
void JIT::DumpBlockCacheToDisk() {
Util::WriteFileBinary(code.getCode<u8*>(), code.getSize(), "jit.dump");
}
} // namespace n64