[Mips] Add -mips-split-hi16 for PS2 IOP modules #4
Loading…
Reference in a new issue
No description provided.
Delete branch "ps2-iop-split-hi"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
PS2 IOP modules built with LLVM were rejected by the boot ROM (error -201, ELF type 0xFF81). Cause: one lui shared by several accesses leaves more R_MIPS_LO16 than R_MIPS_HI16 relocations, which IRX1 cannot represent, so the fixup tool falls back to IRX2.
-mllvm -mips-split-hi16(hidden, off by default):Tests: CodeGen/Mips/split-hi16.ll, split-hi16-reloc.ll. Verified end to end: usbd, bdm, bdmfs_fatfs, usbmass_bd, iomanx, filexio built with this load in PCSX2, and the std::filesystem example passes with 0 failures using them.
🤖 Generated with Claude Code