re PR target/38599 (There should be a Pmode == DImode version of the MIPS lwxs pattern)

gcc/
	PR target/38599
	* config/mips/mips.md (*lwxs): Use :P for pointer values.

gcc/testsuite/
	PR target/38599
	* gcc.target/mips/smartmips-lwxs.c: Remove -mlong32.

From-SVN: r150804
This commit is contained in:
Richard Sandiford 2009-08-16 17:30:45 +00:00 committed by Richard Sandiford
parent cf5fb4b0d5
commit 30fff3d8cb
4 changed files with 14 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2009-08-16 Richard Sandiford <rdsandiford@googlemail.com>
PR target/38599
* config/mips/mips.md (*lwxs): Use :P for pointer values.
2009-08-16 Richard Sandiford <rdsandiford@googlemail.com>
* config/mips/mips-protos.h (mips_push_asm_switch): New function.

View File

@ -4217,9 +4217,9 @@
(define_insn "*lwxs"
[(set (match_operand:IMOVE32 0 "register_operand" "=d")
(mem:IMOVE32
(plus:SI (mult:SI (match_operand:SI 1 "register_operand" "d")
(const_int 4))
(match_operand:SI 2 "register_operand" "d"))))]
(plus:P (mult:P (match_operand:P 1 "register_operand" "d")
(const_int 4))
(match_operand:P 2 "register_operand" "d"))))]
"ISA_HAS_LWXS"
"lwxs\t%0,%1(%2)"
[(set_attr "type" "load")

View File

@ -1,3 +1,8 @@
2009-08-16 Richard Sandiford <rdsandiford@googlemail.com>
PR target/38599
* gcc.target/mips/smartmips-lwxs.c: Remove -mlong32.
2009-08-16 Dodji Seketeli <dodji@redhat.com>
PR debug/37801

View File

@ -1,6 +1,5 @@
/* { dg-do compile } */
/* -mlong32 added because of PR target/38599. */
/* { dg-options "-O -msmartmips -mlong32" } */
/* { dg-options "-O -msmartmips" } */
NOMIPS16 int scaled_indexed_word_load (int a[], int b)
{