| /* { dg-do compile } */ |
| /* { dg-require-effective-target c99_runtime } */ |
| /* { dg-options "-O2 -ffast-math -fdump-tree-gimple" } */ |
| |
| float f(float x) |
| { |
| return x * (x > 0.f ? -1.f : 1.f); |
| } |
| float f1(float x) |
| { |
| return x * (x > 0.f ? 1.f : -1.f); |
| } |
| float g(float x) |
| { |
| return x * (x >= 0.f ? -1.f : 1.f); |
| } |
| float g1(float x) |
| { |
| return x * (x >= 0.f ? 1.f : -1.f); |
| } |
| float h(float x) |
| { |
| return x * (x < 0.f ? -1.f : 1.f); |
| } |
| float h1(float x) |
| { |
| return x * (x < 0.f ? 1.f : -1.f); |
| } |
| float i(float x) |
| { |
| return x * (x <= 0.f ? -1.f : 1.f); |
| } |
| float i1(float x) |
| { |
| return x * (x <= 0.f ? 1.f : -1.f); |
| } |
| /* { dg-final { scan-tree-dump-times "ABS" 8 "gimple"} } */ |