OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [gcc-4.5.1/] [gcc/] [testsuite/] [gcc.dg/] [tree-ssa/] [loop-3.c] - Diff between revs 816 and 826

Only display areas with differences | Details | Blame | View Log

Rev 816 Rev 826
/* A test for strength reduction and induction variable elimination.
/* A test for strength reduction and induction variable elimination.
   Target is restricted to x86 type architectures, so that we may
   Target is restricted to x86 type architectures, so that we may
   assume something about memory addressing modes.  */
   assume something about memory addressing modes.  */
 
 
/* { dg-do compile { target { { i?86-*-* x86_64-*-* } && nonpic } } } */
/* { dg-do compile { target { { i?86-*-* x86_64-*-* } && nonpic } } } */
/* { dg-options "-O1 -fdump-tree-optimized" } */
/* { dg-options "-O1 -fdump-tree-optimized" } */
 
 
int arr_base[100];
int arr_base[100];
 
 
int foo(int);
int foo(int);
 
 
void xxx(void)
void xxx(void)
{
{
  long iter;
  long iter;
 
 
  for (iter = 0; iter < 100; iter++)
  for (iter = 0; iter < 100; iter++)
    arr_base[iter] = foo (iter);
    arr_base[iter] = foo (iter);
}
}
 
 
/* Access to arr_base[iter].y should not be strength reduced, since
/* Access to arr_base[iter].y should not be strength reduced, since
   we have a memory mode including multiplication by 4.  */
   we have a memory mode including multiplication by 4.  */
 
 
/* { dg-final { scan-tree-dump-times "MEM" 1 "optimized" } } */
/* { dg-final { scan-tree-dump-times "MEM" 1 "optimized" } } */
/* { dg-final { scan-tree-dump-times "step:" 1 "optimized" } } */
/* { dg-final { scan-tree-dump-times "step:" 1 "optimized" } } */
 
 
/* And original induction variable should be preserved.  */
/* And original induction variable should be preserved.  */
 
 
/* { dg-final { scan-tree-dump-times "int iter" 1 "optimized" } } */
/* { dg-final { scan-tree-dump-times "int iter" 1 "optimized" } } */
 
 
/* { dg-final { cleanup-tree-dump "optimized" } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.