docs(ppc-manual): check every xenia-rs claim against Canary's source #45
Reference in New Issue
Block a user
Delete Branch "docs/ppc-manual-canary-claims"
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?
#42 moved the manual's generated sections onto Canary. The hand-written sections below them still described the retired xenia-rs interpreter (its snapshots, Rust casts,
vmx.rshelpers). This PR checks each of those statements, 490 across 254 pages, against Canary's emitters and x64 backend at the pinned commitf21ebd49e. Each one is either restated as what Canary does or dropped.Claims that were wrong, not just outdated
VSCR[SAT](allv*ssaturating ops,mfvscr,mtvscr)DID_SATURATEalways yields 0, andmfvscrreadsvscr_vec, which onlymtvscrwriteslswilswxstswistswxdcbimtfsb0mtfsb1vmsum*vmhaddshsvupkhpxvupklpx, most SPRsXEINSTRNOTIMPLEMENTED, which breaks by defaulttdtditwtwiTOis evaluated, andTO = 0emits nothingstvebxstvehxstvewxmtmsrdEE(0x8000)lwarx/stwcx.(and the 64-bit pair)int3fres/frsqrteprecisionfrsqrteandvrsqrtefpare table-driven estimatesstfsRN, can set FPSCR bitsstfsdoes not affect FPSCRfctidzsaturation0x8000…for both signsfctid,fctiw,frsp,fcfid)RNignoredmtfsf/mtfsfiloadvcmpbfpwith NaN0x40000000mftb,mfspr/mtsprtables,mfocrf/mtocrf,vpkd3d128,vupkd3d128, dot productsMarked unverified instead of asserted
FPSCR[NI]=1orVSCR[NJ]=1. Canary starts the FPU in IEEE mode and VMX in flush-to-zero mode, and its own init comment says the startup state was never checked.vmaddcfp128operand order. Canary computesVA*VD + VB; the page claimedVD*VB + VA. Project Sylpheed uses this instruction 47 times (sylpheed.db), so this one matters.Checks
generate_manual.pychanges nothing: 0 pages updated, 350 unchanged.mfvscr/mtvscr/mffsx/mtfsfxnow point intocontrol/, and the deadvmulfp.mdlinks now point tovmx128/vmulfp128.md.xenia,interpreter,snapshotand.rsoutside the generated sections leaves only the README title and Canary-specific mentions.Not fixed here
../vmx128/<x>.mdfor instructions whose page lives invmx/.mfmsr(612) andmtmsrd(1,239) do, so themfmsrpage no longer says titles never use it.🤖 Generated with Claude Code