re PR rtl-optimization/53916 ([mips16] divide operation compiled result incorrect...
authorRichard Sandiford <rdsandiford@googlemail.com>
Sat, 25 May 2013 16:00:12 +0000 (16:00 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Sat, 25 May 2013 16:00:12 +0000 (16:00 +0000)
commit3b8597040b32e22a6defa8f642364500a45d953b
tree1d76677de125339268a0b5ae0da765fa4bc78cda
parentc979d5f525e854fb26e8ff7a7ef34812abef8550
re PR rtl-optimization/53916 ([mips16] divide operation compiled result incorrect with GCC-4.6.3 '-O2' option)

gcc/
PR target/53916
* config/mips/constraints.md (kl): New constraint.
* config/mips/mips.md (divmod<mode>4, udivmod<mode>4): Delete.
(divmod<mode>4_internal): Rename to divmod<mode>4.  Use "kl" as the
constraint for operand 0.  Split after CSE for MIPS16.  Emit a move
from LO for MIPS16.
(udivmod<mode>4_internal): Likewise udivmod<mode>4.

gcc/testsuite/
PR target/53916
* gcc.target/mips/div-13.c: New test.

From-SVN: r199329
gcc/ChangeLog
gcc/config/mips/constraints.md
gcc/config/mips/mips.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/mips/div-13.c [new file with mode: 0644]