aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/pr100927.c
blob: 28a168d351848fdef7f400afdaa49f7ad31e0006 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/* { dg-do compile } */
/* { dg-require-effective-target hard_float } */
/* { dg-options "-O2 -ftrapping-math -fdump-tree-optimized -fdump-rtl-final" } */
/* { dg-final { scan-tree-dump-times {(?n)= \(int\)} 3 "optimized" } }  */
/* { dg-final { scan-rtl-dump-times {(?n)^(?!.*REG_EQUIV)(?=.*\(fix:SI)} 3 "final" } }  */

int
foo_ofr ()
{
  union {float a;
    int b;}c;
  c.b = 0x4f000000;
  return (int)c.a;
}

int
foo_inf ()
{
  union {float a;
    int b;}c;
  c.b = 0xff800000;
  return (int)c.a;
}

int
foo_nan ()
{
  union {float a;
    int b;}c;
  c.b = 0xff800001;
  return (int)c.a;
}