Build the EE with the mips64r5900el-ps2-elf triple #10
Loading…
Reference in a new issue
No description provided.
Delete branch "ee-ps2-triple"
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-194. Switches the EE from
--target=mips64el-unknown-elfto--target=mips64r5900el-ps2-elf, the PS2 triple that implies the R5900 and n32 so lld can link-fltobitcode.Must ship together with ps2/llvm#18, ps2/llvm#20 and ps2/ps2build#20. The triple only exists in an LLVM built from those branches; with the current
LLVM_REF(r5900-ee) clang rejects it.config.shstill pins r5900-ee, so the release needs either #18/#20 merged into r5900-ee orLLVM_REFmoved.wrappers/ee-clang.cfg.inscripts/build-libcxx.shscripts/build-emutls.shsteps/03-compiler-rt.shCMAKE_*_FLAGScompiler-rt note: with
COMPILER_RT_DEFAULT_TARGET_ONLYit takes the arch from the first component ofCMAKE_C_COMPILER_TARGET.mips64r5900elis not in its MIPS64 list, so passing the PS2 triple there builds nothing ("Builtin supported architectures:" empty). The step keepsmips64el-unknown-elfas the configure triple and adds--target=mips64r5900el-ps2-elfto the flags, which comes last on each compile line. The archive is stilllibclang_rt.builtins-mips64el.a, so ps2build's-lclang_rt.builtins-mips64elneeds no change. Clang's own driver lookup (only used when clang drives the link, which ps2build does not do) would look inlib/clang/24/lib/mips64r5900el-ps2-unknown-elf/libclang_rt.builtins.a; nothing installs there today and nothing did before.Verification (Windows, dev LLVM build with #17/#18/#20, scratch prefix):
tests/benchbuilt with ps2build#20 (PS2BUILD_TOOLCHAIN_ROOTat the scratch prefix) at-O2and-O2 -flto; both ELFs are ELF32, EF_MIPS_ABI2, MACH_5900.-O2 -fltorun 20261015T220700-0203 pass,-O2run 20261015T220708-0204 pass,[ps2rig] exit=0, all 9 checksums equal.Not tested: the Linux and cross-Windows release builds via
build.sh/Docker.🤖 Generated with Claude Code