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

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [gcc.dg/] [20030324-1.c] - Diff between revs 298 and 338

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

Rev 298 Rev 338
/* { dg-do run } */
/* { dg-do run } */
/* { dg-options "-O -fstrict-aliasing -fgcse" } */
/* { dg-options "-O -fstrict-aliasing -fgcse" } */
 
 
/* PR optimization/10087 */
/* PR optimization/10087 */
/* Contributed by Peter van Hoof <p.van-hoof@qub.ac.uk> */
/* Contributed by Peter van Hoof <p.van-hoof@qub.ac.uk> */
 
 
extern void abort(void);
extern void abort(void);
 
 
void b(int*,int*);
void b(int*,int*);
 
 
typedef struct {
typedef struct {
    double T1;
    double T1;
    char c;
    char c;
} S;
} S;
 
 
int main(void)
int main(void)
{
{
  int i,j;
  int i,j;
  double s;
  double s;
 
 
  S x1[2][2];
  S x1[2][2];
  S *x[2] = { x1[0], x1[1] };
  S *x[2] = { x1[0], x1[1] };
  S **E = x;
  S **E = x;
 
 
  for( i=0; i < 2; i++ )
  for( i=0; i < 2; i++ )
    for( j=0; j < 2; j++ )
    for( j=0; j < 2; j++ )
      E[j][i].T1 = 1;
      E[j][i].T1 = 1;
 
 
  for( i=0; i < 2; i++ )
  for( i=0; i < 2; i++ )
    for( j=0; j < 2; j++ )
    for( j=0; j < 2; j++ )
      s = E[j][i].T1;
      s = E[j][i].T1;
 
 
  b(&j,&i);
  b(&j,&i);
  if (s != 1)
  if (s != 1)
    abort ();
    abort ();
  return 0;
  return 0;
}
}
 
 
void b(int *i, int *j) {}
void b(int *i, int *j) {}
 
 

powered by: WebSVN 2.1.0

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