libcpp, c, middle-end: Optimize initializers using #embed in C
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / abs-3.c
blobd2638e8f4c5f03047e8ac5ee527e3e51c7ecccd1
1 /* { dg-do compile } */
2 /* { dg-options "-O1 -fdump-tree-optimized" } */
3 /* PR tree-optimization/109829 */
5 float abs_f(float x) { return __builtin_signbit(x) ? -x : x; }
6 double abs_d(double x) { return __builtin_signbit(x) ? -x : x; }
7 long double abs_ld(long double x) { return __builtin_signbit(x) ? -x : x; }
10 /* __builtin_signbit(x) ? -x : x. Should be convert into ABS_EXP<x> */
11 /* { dg-final { scan-tree-dump-not "signbit" "optimized"} } */
12 /* { dg-final { scan-tree-dump-not "= -" "optimized"} } */
13 /* { dg-final { scan-tree-dump-times "= ABS_EXPR" 3 "optimized"} } */