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.c-torture/] [execute/] [switch-1.c] - Diff between revs 297 and 338

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

Rev 297 Rev 338
/* Copyright (C) 2003  Free Software Foundation.
/* Copyright (C) 2003  Free Software Foundation.
 
 
   Test that switch statements suitable using case bit tests are
   Test that switch statements suitable using case bit tests are
   implemented correctly.
   implemented correctly.
 
 
   Written by Roger Sayle, 01/25/2001.  */
   Written by Roger Sayle, 01/25/2001.  */
 
 
extern void abort (void);
extern void abort (void);
 
 
int
int
foo (int x)
foo (int x)
{
{
  switch (x)
  switch (x)
    {
    {
    case 4:
    case 4:
    case 6:
    case 6:
    case 9:
    case 9:
    case 11:
    case 11:
      return 30;
      return 30;
    }
    }
  return 31;
  return 31;
}
}
 
 
int
int
main (int argc)
main (int argc)
{
{
  int i, r;
  int i, r;
 
 
  for (i=-1; i<66; i++)
  for (i=-1; i<66; i++)
    {
    {
      r = foo (i);
      r = foo (i);
      if (i == 4)
      if (i == 4)
        {
        {
          if (r != 30)
          if (r != 30)
            abort ();
            abort ();
        }
        }
      else if (i == 6)
      else if (i == 6)
        {
        {
          if (r != 30)
          if (r != 30)
            abort ();
            abort ();
        }
        }
      else if (i == 9)
      else if (i == 9)
        {
        {
          if (r != 30)
          if (r != 30)
            abort ();
            abort ();
        }
        }
      else if (i == 11)
      else if (i == 11)
        {
        {
          if (r != 30)
          if (r != 30)
            abort ();
            abort ();
        }
        }
      else if (r != 31)
      else if (r != 31)
        abort ();
        abort ();
    }
    }
  return 0;
  return 0;
}
}
 
 
 
 

powered by: WebSVN 2.1.0

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