Multiple and add instructions for Mips have been defined to request mips32r2 platform, although they are request on mips64, which makes them available for mips4 and mips5 as well. Assembly of those instructions currently reports error for mips64platforms. This patch fixes the requested features and updates the corresponding test files.
Details
Diff Detail
Event Timeline
Multiple and add instructions for Mips have been defined to request mips32r2 platform, although they
are request on mips64, which makes them available for mips4 and mips5 as well. Assembly of those
instructions currently reports error for mips64platforms. This patch fixes the requested features and
updates the corresponding test files.
The English here is quite difficult to understand but if I understand correctly then these instructions are currently available in mips32r2/mips64r2 and later but should also be available in mips4, mips5, and mips64. Looking at the docs, I agree.
LGTM with the test cases sorted properly and the missing 64-NONAN case added.
One thing to mention is that we can't use madd.[ds] or msub.[ds] for the R8000 series without fast-math being enabled. This is because these processors do a fused multiply add/sub instead of rounding the intermediate as per IEEE754. Given that we only support a generic MIPS-IV this isn't a problem for now but we should note this with a FIXME somewhere.
test/CodeGen/Mips/fmadd1.ll | ||
---|---|---|
166–168 | You need to add the 64-NONAN case too. | |
test/MC/Mips/mips4/valid.s | ||
141–149 | The instructions in this file should be sorted alphabetically. | |
test/MC/Mips/mips5/valid.s | ||
142–149 | The instructions in this file should be sorted alphabetically. | |
test/MC/Mips/mips64/valid.s | ||
147–154 | The instructions in this file should be sorted alphabetically. |
If you wouldn't mind making the ABI option change to the test separately I'd appreciate it (also, the obvious sed command is pre-approved). There are also other tests that do the exact same thing.
Thanks!
-eric
test/CodeGen/Mips/fmadd1.ll | ||
---|---|---|
11 | Please submit this separately. |
Command line options committed revision 230482.
Other changes committed revision 230500.
Please submit this separately.