mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-21 23:41:13 +08:00
* config/mips/mips.md: Disable the movstrsi define_split.
From-SVN: r60911
This commit is contained in:
parent
5c2465500a
commit
1ba8a9c4ec
gcc
@ -1,3 +1,7 @@
|
||||
2003-01-05 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* config/mips/mips.md: Disable the movstrsi define_split.
|
||||
|
||||
2003-01-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* alloc-pool.c: Don't include "libiberty.h".
|
||||
|
@ -6550,6 +6550,12 @@ move\\t%0,%z4\\n\\
|
||||
;; fill a delay slot. This also prevents a bug in delayed branches
|
||||
;; from showing up, which reuses one of the registers in our clobbers.
|
||||
|
||||
;; ??? Disabled because it doesn't preserve alias information for
|
||||
;; operands 0 and 1. Also, the rtl for the second insn doesn't mention
|
||||
;; that it uses the registers clobbered by the first.
|
||||
;;
|
||||
;; It would probably be better to split the block into individual
|
||||
;; instructions instead.
|
||||
(define_split
|
||||
[(set (mem:BLK (match_operand:SI 0 "register_operand" ""))
|
||||
(mem:BLK (match_operand:SI 1 "register_operand" "")))
|
||||
@ -6561,7 +6567,7 @@ move\\t%0,%z4\\n\\
|
||||
(use (match_operand:SI 3 "small_int" ""))
|
||||
(use (const_int 0))]
|
||||
|
||||
"reload_completed && !TARGET_DEBUG_D_MODE && INTVAL (operands[2]) > 0"
|
||||
"reload_completed && 0 && INTVAL (operands[2]) > 0"
|
||||
|
||||
;; All but the last move
|
||||
[(parallel [(set (mem:BLK (match_dup 0))
|
||||
|
@ -1,3 +1,7 @@
|
||||
2003-01-05 Richard Sandiford <rsandifo@redhat.com>
|
||||
|
||||
* gcc.c-torture/execute/20030105-1.c: New test.
|
||||
|
||||
2003-01-04 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
|
||||
|
||||
* g++.dg/parse/namespace3.C: Remove extra semicolons.
|
||||
|
20
gcc/testsuite/gcc.c-torture/execute/20030105-1.c
Normal file
20
gcc/testsuite/gcc.c-torture/execute/20030105-1.c
Normal file
@ -0,0 +1,20 @@
|
||||
int __attribute__ ((noinline))
|
||||
foo ()
|
||||
{
|
||||
const int a[8] = { 0, 1, 2, 3, 4, 5, 6, 7 };
|
||||
int i, sum;
|
||||
|
||||
sum = 0;
|
||||
for (i = 0; i < sizeof (a) / sizeof (*a); i++)
|
||||
sum += a[i];
|
||||
|
||||
return sum;
|
||||
}
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
if (foo () != 28)
|
||||
abort ();
|
||||
exit (0);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user