]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.dg/tree-ssa/pr93582-9.c
Fix profile update in tree_transform_and_unroll_loop
[thirdparty/gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / pr93582-9.c
1 /* PR tree-optimization/93582 */
2 /* { dg-do compile { target int32 } } */
3 /* { dg-options "-O2 -fdump-tree-fre1" } */
4 /* { dg-final { scan-tree-dump "return 5364;" "fre1" { target le } } } */
5 /* { dg-final { scan-tree-dump "return 7838;" "fre1" { target be } } } */
6 /* { dg-final { scan-tree-dump "return 1959;" "fre1" { target le } } } */
7 /* { dg-final { scan-tree-dump "return 1268;" "fre1" { target be } } } */
8
9 union U { char a[8]; struct S { unsigned int b : 8, c : 13, d : 11; } e; } u;
10
11 __attribute__((noipa)) int
12 foo (void)
13 {
14 __builtin_memset (&u.a, 0xf4, sizeof (u.a));
15 return u.e.c;
16 }
17
18 __attribute__((noipa)) int
19 baz (void)
20 {
21 __builtin_memset (&u.a, 0xf4, sizeof (u.a));
22 return u.e.d;
23 }