public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Why does loop-35.c store motion testcase fail for AVR?
@ 2008-06-17  1:31 Andy H
  0 siblings, 0 replies; only message in thread
From: Andy H @ 2008-06-17  1:31 UTC (permalink / raw)
  To: GCC Development


Help !

gcc.dg/tree-ssa/loop-35.c is a test that looks for "Executing store motion" in dump-tree-lim-details

As the load and store of memory location should be pulled out of loop.


This works for 3 out of 4 tescases. But on AVR target test3() will fail.

The only difference between this and test1() is that index is unsigned long rather than int.
Index of char or int work fine.

Why????

Even considering pointers and int are only HImode, I cant see why a long (SImode) should affect this.



void test3(unsigned long b)
{
 unsigned i;

 /* And here.  */
 for (i = 0; i < 100; i++)
   {
     arr[b+8].X += i;
     arr[b+9].X += i;
   }
}





^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-06-17  1:31 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-06-17  1:31 Why does loop-35.c store motion testcase fail for AVR? Andy H

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).