1 /* { dg-do compile } */
2 /* { dg-require-effective-target int32plus } */
3 /* { dg-skip-if "No Inf support" { spu-*-* } } */
4 /* { dg-options "-O -ftrapping-math" } */
5
6 /* There should be exactly 2 +Inf in the assembly file. */
7
8 float f1 = __FLT_MAX__ + __FLT_MAX__;
9
foo1(void)10 float foo1(void)
11 {
12 return __FLT_MAX__ + __FLT_MAX__;
13 }
14
15 float f2 = 1.0f/0.0f;
16
foo2(void)17 float foo2(void)
18 {
19 return 1.0f/0.0f;
20 }
21
22 /* { dg-final { scan-assembler-times "2139095040" 2 { target { ! mmix-*-* } } } } */
23 /* { dg-final { scan-assembler-times "#7f800000" 2 { target mmix-*-* } } } */
24