[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 26/26] MAINTAINERS: Add entry for MIPS Toshiba TCG
From: |
Fredrik Noring |
Subject: |
Re: [PATCH 26/26] MAINTAINERS: Add entry for MIPS Toshiba TCG |
Date: |
Sun, 13 Dec 2020 17:40:07 +0100 |
On Sun, Dec 13, 2020 at 04:23:23PM +0100, Philippe Mathieu-Daudé wrote:
> On 12/12/20 5:04 PM, Fredrik Noring wrote:
> > I may be able to help on the TX79 that is an R5900, but unless commit
> > 823f2897bdd7 ("target/mips: Disable R5900 support") is reverted, it
> > remains shut off in QEMU. To obtain n32, in addition to o32, one may
> > want to apply something similar to this:
>
> I added o32 because these are the only binaries I could find to test
> the CPU you added. Are there n32 binaries easily available?
With a GNU C library patch:
Yes. The only (small) changes needed for n32 are related to Glibc,
since the R5900 does not implement DMULT etc. in hardware. The attached
patch (see below) traps these instructions, but the Glibc patch proposal
(not yet submitted) will instead emulate them, which is believed to be
faster (with actual hardware; with QEMU it would most likely instead be
significantly slower since QEMU would need to emulate this emulation).
quoted from
https://lists.gnu.org/archive/html/qemu-devel/2019-01/msg00974.html
having this GNU C library patch for n32 attached.
> I noticed GCC merged your patch,
Yes, GCC emits R5900 o32.
> and Gentoo too.
I suppose you mean
https://github.com/frno7/gentoo.overlay/tree/master/app-emulation/qemu-mipsr5900el
that is my QEMU overlay (having this patch in the "files" directory)
for Gentoo?
> It should be enough to respin the Docker image to cross-compile and test
> the TCG tests you already added:
Sounds good, although I'm not familiar with Docker myself. A person named
TobiX has also made an image for R5900 cross-compilation:
https://github.com/frno7/linux/issues/33#issuecomment-632284209
> 8e2e5e7daca tests/tcg: mips: Test R5900 three-operand MADDU
> 84dc0712361 tests/tcg: mips: Test R5900 three-operand MADD1
> 50f299da629 tests/tcg: mips: Test R5900 three-operand MADD
> 35eb9be6bb6 tests/tcg/mips: Add tests for R5900 DIVU1
> 990aa328be4 tests/tcg/mips: Add tests for R5900 DIV1
> 4d261a6a595 tests/tcg/mips: Add tests for R5900 MTLO1 and MTHI1
> 3303f017adb tests/tcg/mips: Add tests for R5900 MFLO1 and MFHI1
> bec4d66b248 tests/tcg/mips: Add tests for R5900 three-operand MULTU1
> cb56125eea7 tests/tcg/mips: Add tests for R5900 three-operand MULT1
> 667eded2702 tests/tcg/mips: Add tests for R5900 three-operand MULTU
There are tests for the MMIs PCPYUD, PCPYLD, LQ and SQ as well
https://lists.gnu.org/archive/html/qemu-devel/2019-01/msg02514.html
https://lists.gnu.org/archive/html/qemu-devel/2019-01/msg02516.html
https://lists.gnu.org/archive/html/qemu-devel/2019-01/msg02517.html
although, as previously suggested, I'm happy to postpone the MMIs.
Fredrik