patch r5900/micromips handling

"Jürgen Urban" JuergenUrban@gmx.de
Sun Jan 27 22:33:00 GMT 2013


Hello,

the attached patch was requested by Maciej W. Rozycki. As requested this fixes the micromips handling and disables ll, sc, lld and scd on the r5900.
This also enables l.d and s.d macros on r5900. This will use lwc1/swc1 to emulate ldc1/sdc1. The largest part of the patch is the test for this and fixing the tests.
The patch need to be applied after the previous one for VU support on r5900.

gas/ChangeLog:
* config/tc-mips.c: Fix micromips and ldc1/sdc1 handling. micromips is globally enabled disabled. Macro for trunc.w.s should not be used on r5900.

gas/testsuite/Changelog:
* gas/mips/24k-triple-stores-2.d gas/mips/24k-triple-stores-2.s gas/mips/micromips@24k-triple-stores-2.d gas/mips/24k-triple-stores-2-llsc.d gas/mips/24k-triple-stores-2-llsc.s: Move "sc" tests to separate file.
* gas/mips/l_d-single.d gas/mips/s_d-single.d: Verify l.d and s.d macros on singlefloat (r5900).
* gas/testsuite/gas/mips/mips.exp: Run "sc" tests on machines supporting it. Run "nollsc" tests on r5900.
* gas/mips/r5900-full.d gas/mips/r5900-full.s: Verify that mips ISA level can be upgraded to support ll, sc, lld and scd.
* gas/mips/r5900-nollsc.l gas/mips/r5900-nollsc.s: Verify that ll, sc, lld and scd are disabled on r5900.

opcodes/Changelog:
* mips-opc.c: Disable ll, sc, lld and scd on r5900. Enable l.d and s.d macros on r5900. Disable bad macro for trunc.w.s on r5900, because it is using undefined instructions on r5900.

Best regards
Jürgen Urban
-------------- next part --------------
A non-text attachment was scrubbed...
Name: binutils-cvs-20130104-mipsel-ps2-fix.patch
Type: text/x-patch
Size: 70497 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20130127/aa8ae890/attachment.bin>


More information about the Binutils mailing list