(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
builtins-44.c
       1  /* { dg-do compile } */
       2  /* { dg-require-effective-target inf } */
       3  /* { dg-options "-O1 -fno-trapping-math -fno-finite-math-only -fdump-tree-optimized" } */
       4    
       5  extern void f(int);
       6  extern void link_error ();
       7  
       8  extern float x;
       9  extern double y;
      10  extern long double z;
      11  
      12  int
      13  main ()
      14  {
      15    double pinf = __builtin_inf ();
      16    float pinff = __builtin_inff ();
      17    long double pinfl = __builtin_infl ();
      18  
      19    if (__builtin_isinf (pinf) != 1)
      20      link_error ();
      21    if (__builtin_isinf (pinff) != 1)
      22      link_error ();
      23    if (__builtin_isinff (pinff) != 1)
      24      link_error ();
      25    if (__builtin_isinf (pinfl) != 1)
      26      link_error ();
      27    if (__builtin_isinfl (pinfl) != 1)
      28      link_error ();
      29  
      30    if (__builtin_isinf_sign (-pinf) != -1)
      31      link_error ();
      32    if (__builtin_isinf_sign (-pinff) != -1)
      33      link_error ();
      34    if (__builtin_isinf_sign (-pinfl) != -1)
      35      link_error ();
      36  
      37    if (__builtin_isinf (4.0))
      38      link_error ();
      39    if (__builtin_isinf (4.0))
      40      link_error ();
      41    if (__builtin_isinff (4.0))
      42      link_error ();
      43    if (__builtin_isinf (4.0))
      44      link_error ();
      45    if (__builtin_isinfl (4.0))
      46      link_error ();
      47  }
      48  
      49  
      50  /* Check that all instances of link_error were subject to DCE.  */
      51  /* { dg-final { scan-tree-dump-times "link_error" 0 "optimized" } } */