]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.dg/tree-ssa/abs-4.c
Fix profile update in tree_transform_and_unroll_loop
[thirdparty/gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / abs-4.c
1 /* { dg-do compile } */
2 /* { dg-options "-O1 -fdump-tree-optimized" } */
3 /* PR tree-optimization/109829 */
4
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; }
8
9
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-times "= ABS_EXPR" 3 "optimized"} } */
13 /* { dg-final { scan-tree-dump-times "= -" 3 "optimized"} } */