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

Subversion Repositories openrisc

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

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

extern int f1 (int, void *);
extern int *f2 (void) __attribute__ ((__const__));
extern int f3 (int, void *);
 
int
test (int x, char *y, int z)
{
  int b = 0;
 
  if (x < 1024)
    {
      y[0] = '\0';
 
      do
	{
	  switch (f1 (x, y + b))
	    {
	    case -1:
	      if (b == 0)
		return -1;
	      else
		return b;
 
	    default:
	      b++;
	    }
	}
      while (y[b - 1] != '\0' && y[b - 1] != '\n' && b < z);
    }
  else
    {
      do
	{
	  switch (f3 (x, y + b))
	    {
	    case -1:
	      if ((*f2 ()) == 4)
		continue;
	      if (b == 0)
		return -1;
	      else
		return b;
 
	    default:
	      b++;
	    }
	}
      while (y[b - 1] != '\0' && y[b - 1] != '\n' && b < z);
    }
  return b;
}
 

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.