On Wed, 20 May 2026 at 12:00, Philippe Mathieu-Daudé <[email protected]> wrote: > > Hi James, > > On 20/5/26 06:36, James Hilliard wrote: > > This series updates MIPS linux-user unaligned-access behavior and fills > > in missing Octeon user-mode instruction support used by existing Octeon > > binaries. > > > > The first patches model the Linux/MIPS sysmips ABI pieces needed by > > linux-user, including MIPS_FLUSH_CACHE, MIPS_ATOMIC_SET, and the > > MIPS_FIXADE policy used to control unaligned scalar access fixups. > > User-mode unaligned scalar accesses default to software fixups and > > sysmips(MIPS_FIXADE) can toggle SIGBUS/BUS_ADRALN behavior. > > > > Richard Henderson's v7.5 multiplier/QMAC rework is incorporated directly > > as nine patches: two TCG preparatory patches and seven Octeon > > multiplier/QMAC patches. The Octeon multiplier and QMAC translations now > > expand inline in TCG. > > > > The remaining Octeon patches add integer, indexed memory, atomic, COP2 > > crypto, CHORD, LLM, and CvmCount RDHWR support. The COP2 work is split > > into state, helper plumbing, per-engine helper patches, explicit > > selector decode, CHORD/LLM, and smoke-test coverage, with each > > functional block isolated. The series also adds a small > > mips64/mips64el TCG guest test covering representative Octeon integer, > > fixed-point, multiplier, RDHWR, and COP2 selector paths. The final patch > > corrects the Octeon68XX CP1 feature bits and FCR defaults. > > Thanks for this series, I really appreciate your dedication and the > quality of your patches. I have been trying to queue it since v7 but > you keep respinning :) Since the first half is stable and reviewed, > I'll queue that first and send in my next MIPS pull request; less for > you to carry over.
Now merged as commits e83a42cbf72...006d624b948. Rebasing the rest shouldn't be too hard (changes are obvious, I also moved the TRANS_LX block around). Tell me if you have an issue rebasing your work and I'll repost the remaining patches. Regards, Phil. > > --- > > James Hilliard (43): > > linux-user/mips: implement sysmips(MIPS_FLUSH_CACHE) > > linux-user/mips: implement sysmips(MIPS_ATOMIC_SET) > > linux-user/mips, target/mips: honor MIPS_FIXADE for unaligned > > accesses > > target/mips: fix Octeon arithmetic destination handling > > target/mips: drop Octeon zero-register fast paths > > target/mips: split Octeon SEQ/SNE decode > > target/mips: add Octeon LBX instruction > > target/mips: add Octeon LHUX instruction > > target/mips: add Octeon LWUX instruction > > target/mips: add Octeon SAA instruction > > target/mips: add Octeon SAAD instruction > > target/mips: add Octeon ZCB and ZCBT instructions > > target/mips: add Octeon multiplier state > > target/mips: add Octeon MTM instructions > > target/mips: add Octeon MTP instructions > > target/mips: add Octeon VMULU instruction > > target/mips: add Octeon VMM0 instruction > > target/mips: add Octeon V3MULU instruction > > target/mips: add Octeon QMAC instructions > > tests/tcg/mips: add Octeon instruction smoke test > > target/mips: add Octeon LA* atomic instructions
