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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gcc.c-torture/] [compile/] [20070905-1.c] - Rev 801

Go to most recent revision | Compare with Previous | Blame | View Log

/* PR tree-optimization/32772 */
 
struct S
{
  unsigned long bits[1];
};
 
void f1 (int, unsigned long *);
int f2 (void);
int f3 (int, unsigned long *);
int f4 (int, unsigned long *);
 
static inline __attribute__ ((always_inline))
void baz (int x, volatile struct S *y)
{
  f1 (x, y->bits);
}
 
static int
bar (int x, struct S *y)
{
  int n;
  if (__builtin_constant_p (x) ? f3 (x, y->bits) : f4 (x, y->bits))
    baz (x, y);
  for (n = f2 (); n < 8; n = f2 ())
    f3 (n, y->bits);
}
 
void
foo (int x, int y)
{
  struct S m;
  while ((y = bar (x, &m)) >= 0);
}
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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