annotate gcc/testsuite/gcc.dg/lto/chkp-static-bounds_0.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* { dg-lto-do link } */
kono
parents:
diff changeset
2 /* { dg-require-effective-target mpx } */
kono
parents:
diff changeset
3 /* { dg-lto-options { { -flto -flto-partition=max -fcheck-pointer-bounds -mmpx } } } */
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 const char *cc;
kono
parents:
diff changeset
6
kono
parents:
diff changeset
7 int test1 (const char *c)
kono
parents:
diff changeset
8 {
kono
parents:
diff changeset
9 c = __builtin___bnd_init_ptr_bounds (c);
kono
parents:
diff changeset
10 cc = c;
kono
parents:
diff changeset
11 return c[0] * 2;
kono
parents:
diff changeset
12 }
kono
parents:
diff changeset
13
kono
parents:
diff changeset
14 struct S
kono
parents:
diff changeset
15 {
kono
parents:
diff changeset
16 int (*fnptr) (const char *);
kono
parents:
diff changeset
17 } S;
kono
parents:
diff changeset
18
kono
parents:
diff changeset
19 struct S s1 = {test1};
kono
parents:
diff changeset
20 struct S s2 = {test1};
kono
parents:
diff changeset
21 struct S s3 = {test1};
kono
parents:
diff changeset
22
kono
parents:
diff changeset
23 int main (int argc, const char **argv)
kono
parents:
diff changeset
24 {
kono
parents:
diff changeset
25 return s1.fnptr (argv[0]) + s2.fnptr (argv[1]);
kono
parents:
diff changeset
26 }