annotate gcc/testsuite/gcc.dg/pr32338-2.c @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* PR target/32338 */
kono
parents:
diff changeset
2 /* { dg-do link } */
kono
parents:
diff changeset
3 /* { dg-options "-O2 -fno-omit-frame-pointer" } */
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 struct S
kono
parents:
diff changeset
6 {
kono
parents:
diff changeset
7 };
kono
parents:
diff changeset
8
kono
parents:
diff changeset
9 int
kono
parents:
diff changeset
10 __attribute__((noinline))
kono
parents:
diff changeset
11 foo (void)
kono
parents:
diff changeset
12 {
kono
parents:
diff changeset
13 return 2;
kono
parents:
diff changeset
14 }
kono
parents:
diff changeset
15
kono
parents:
diff changeset
16 int
kono
parents:
diff changeset
17 __attribute__((noinline))
kono
parents:
diff changeset
18 bar (void)
kono
parents:
diff changeset
19 {
kono
parents:
diff changeset
20 return 4;
kono
parents:
diff changeset
21 }
kono
parents:
diff changeset
22
kono
parents:
diff changeset
23 int
kono
parents:
diff changeset
24 __attribute__((noinline))
kono
parents:
diff changeset
25 fnl (void)
kono
parents:
diff changeset
26 {
kono
parents:
diff changeset
27 return 6;
kono
parents:
diff changeset
28 }
kono
parents:
diff changeset
29
kono
parents:
diff changeset
30 int
kono
parents:
diff changeset
31 __attribute__((noinline))
kono
parents:
diff changeset
32 baz (void)
kono
parents:
diff changeset
33 {
kono
parents:
diff changeset
34 unsigned int len;
kono
parents:
diff changeset
35 len = fnl ();
kono
parents:
diff changeset
36 if (len > 512)
kono
parents:
diff changeset
37 return bar ();
kono
parents:
diff changeset
38 return foo ();
kono
parents:
diff changeset
39 }
kono
parents:
diff changeset
40
kono
parents:
diff changeset
41 int
kono
parents:
diff changeset
42 main (int argc, char *argv[])
kono
parents:
diff changeset
43 {
kono
parents:
diff changeset
44 if (argc > 30)
kono
parents:
diff changeset
45 return baz ();
kono
parents:
diff changeset
46 return 0;
kono
parents:
diff changeset
47 }