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

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.2.2/] [gcc/] [testsuite/] [gcc.dg/] [20030804-1.c] - Diff between revs 149 and 154

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 149 Rev 154
/* Copyright (C) 2003 Free Software Foundation.
/* Copyright (C) 2003 Free Software Foundation.
 
 
   Check that constant folding of mathematical expressions doesn't
   Check that constant folding of mathematical expressions doesn't
   break anything.
   break anything.
 
 
   Written by Roger Sayle, 3rd August 2003.  */
   Written by Roger Sayle, 3rd August 2003.  */
 
 
/* { dg-do link } */
/* { dg-do link } */
/* { dg-options "-O2 -ffast-math" } */
/* { dg-options "-O2 -ffast-math" } */
 
 
extern void link_error(void);
extern void link_error(void);
 
 
void test(double x)
void test(double x)
{
{
  if (x+x != 2.0*x)
  if (x+x != 2.0*x)
    link_error ();
    link_error ();
  if (x+x != x*2.0)
  if (x+x != x*2.0)
    link_error ();
    link_error ();
 
 
  if (x+x+x != 3.0*x)
  if (x+x+x != 3.0*x)
    link_error ();
    link_error ();
  if (x+x+x != x*3.0)
  if (x+x+x != x*3.0)
    link_error ();
    link_error ();
 
 
  if ((x+x)+x != 3.0*x)
  if ((x+x)+x != 3.0*x)
    link_error ();
    link_error ();
  if ((x+x)+x != x*3.0)
  if ((x+x)+x != x*3.0)
    link_error ();
    link_error ();
 
 
  if (x+(x+x) != 3.0*x)
  if (x+(x+x) != 3.0*x)
    link_error ();
    link_error ();
  if (x+(x+x) != x*3.0)
  if (x+(x+x) != x*3.0)
    link_error ();
    link_error ();
 
 
  if (x+4.0*x != 5.0*x)
  if (x+4.0*x != 5.0*x)
    link_error ();
    link_error ();
  if (x+4.0*x != x*5.0)
  if (x+4.0*x != x*5.0)
    link_error ();
    link_error ();
  if (x+x*4.0 != 5.0*x)
  if (x+x*4.0 != 5.0*x)
    link_error ();
    link_error ();
  if (x+x*4.0 != x*5.0)
  if (x+x*4.0 != x*5.0)
    link_error ();
    link_error ();
  if (4.0*x+x != 5.0*x)
  if (4.0*x+x != 5.0*x)
    link_error ();
    link_error ();
  if (4.0*x+x != x*5.0)
  if (4.0*x+x != x*5.0)
    link_error ();
    link_error ();
  if (x*4.0+x != 5.0*x)
  if (x*4.0+x != 5.0*x)
    link_error ();
    link_error ();
  if (x*4.0+x != x*5.0)
  if (x*4.0+x != x*5.0)
    link_error ();
    link_error ();
 
 
  if (3.0*x + 5.0*x != 8.0*x)
  if (3.0*x + 5.0*x != 8.0*x)
    link_error ();
    link_error ();
  if (3.0*x + 5.0*x != x*8.0)
  if (3.0*x + 5.0*x != x*8.0)
    link_error ();
    link_error ();
  if (x*3.0 + 5.0*x != 8.0*x)
  if (x*3.0 + 5.0*x != 8.0*x)
    link_error ();
    link_error ();
  if (x*3.0 + 5.0*x != x*8.0)
  if (x*3.0 + 5.0*x != x*8.0)
    link_error ();
    link_error ();
  if (3.0*x + x*5.0 != 8.0*x)
  if (3.0*x + x*5.0 != 8.0*x)
    link_error ();
    link_error ();
  if (3.0*x + x*5.0 != x*8.0)
  if (3.0*x + x*5.0 != x*8.0)
    link_error ();
    link_error ();
  if (x*3.0 + x*5.0 != 8.0*x)
  if (x*3.0 + x*5.0 != 8.0*x)
    link_error ();
    link_error ();
  if (x*3.0 + x*5.0 != x*8.0)
  if (x*3.0 + x*5.0 != x*8.0)
    link_error ();
    link_error ();
}
}
 
 
int main()
int main()
{
{
  test(2.0);
  test(2.0);
  return 0;
  return 0;
}
}
 
 
 
 

powered by: WebSVN 2.1.0

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