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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [testsuite/] [gcc.dg/] [builtins-6.c] - Diff between revs 154 and 816

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

Rev 154 Rev 816
/* Copyright (C) 2003  Free Software Foundation.
/* Copyright (C) 2003  Free Software Foundation.
 
 
   Verify that constant folding comparisons against built-in math functions
   Verify that constant folding comparisons against built-in math functions
   don't cause any problems for the compiler, and produce expected results.
   don't cause any problems for the compiler, and produce expected results.
 
 
   Written by Roger Sayle, 15th March 2003.  */
   Written by Roger Sayle, 15th March 2003.  */
 
 
/* { dg-do run } */
/* { dg-do run } */
/* { dg-options "-O2 -ffast-math" } */
/* { dg-options "-O2 -ffast-math" } */
 
 
#include <float.h>
#include <float.h>
 
 
extern void abort (void);
extern void abort (void);
extern double sqrt (double);
extern double sqrt (double);
 
 
int test1(double x)
int test1(double x)
{
{
  return sqrt(x) < -9.0;
  return sqrt(x) < -9.0;
}
}
 
 
int test2(double x)
int test2(double x)
{
{
  return sqrt(x) > -9.0;
  return sqrt(x) > -9.0;
}
}
 
 
int test3(double x)
int test3(double x)
{
{
  return sqrt(x) < 9.0;
  return sqrt(x) < 9.0;
}
}
 
 
int test4(double x)
int test4(double x)
{
{
  return sqrt(x) > 9.0;
  return sqrt(x) > 9.0;
}
}
 
 
int test5(double x)
int test5(double x)
{
{
  return sqrt(x) < DBL_MAX;
  return sqrt(x) < DBL_MAX;
}
}
 
 
int test6(double x)
int test6(double x)
{
{
  return sqrt(x) > DBL_MAX;
  return sqrt(x) > DBL_MAX;
}
}
 
 
int main()
int main()
{
{
  double x;
  double x;
 
 
  x = 80.0;
  x = 80.0;
  if (test1 (x))
  if (test1 (x))
    abort ();
    abort ();
  if (! test2 (x))
  if (! test2 (x))
    abort ();
    abort ();
  if (! test3 (x))
  if (! test3 (x))
    abort ();
    abort ();
  if (test4 (x))
  if (test4 (x))
    abort ();
    abort ();
  if (! test5 (x))
  if (! test5 (x))
    abort ();
    abort ();
  if (test6 (x))
  if (test6 (x))
    abort ();
    abort ();
 
 
  x = 100.0;
  x = 100.0;
  if (test1 (x))
  if (test1 (x))
    abort ();
    abort ();
  if (! test2 (x))
  if (! test2 (x))
    abort ();
    abort ();
  if (test3 (x))
  if (test3 (x))
    abort ();
    abort ();
  if (! test4 (x))
  if (! test4 (x))
    abort ();
    abort ();
  if (! test5 (x))
  if (! test5 (x))
    abort ();
    abort ();
  if (test6 (x))
  if (test6 (x))
    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.