aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr85811.c
blob: 868f66c32a114677250e0a5b8f504220917fbe5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-optimized" } */
#include <stdio.h>

int main() {
  const double negval = -1.0;
  const double nanval = 0.0 / 0.0;
  const double val = __builtin_fmax(negval, nanval);
  const double absval = __builtin_fabs(val);
  printf("fabs(%.16e) = %.16e\n", val, absval);
  return absval >= 0 ? 0 : 1;
}

/* We hope not to see:  printf ("fabs(%.16e) = %.16e\n", val_4, val_4); */
/* { dg-final { scan-tree-dump-not "val_\[0-9\]*, val_\[0-9\]*" "optimized" } } */