annotate gcc/testsuite/c-c++-common/asan/no-redundant-instrumentation-12.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 /* { dg-options "-fdump-tree-sanopt" } */
kono
parents:
diff changeset
2 /* { dg-do compile } */
kono
parents:
diff changeset
3 /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 void
kono
parents:
diff changeset
6 foo (char *p)
kono
parents:
diff changeset
7 {
kono
parents:
diff changeset
8 volatile int zero = 0;
kono
parents:
diff changeset
9 __builtin_memcpy (p, "abc", zero);
kono
parents:
diff changeset
10 /* This generates a __builtin___asan_report_store1 because we pass volatile
kono
parents:
diff changeset
11 zero length into memcpy. */
kono
parents:
diff changeset
12 p[0] = 'd';
kono
parents:
diff changeset
13 }
kono
parents:
diff changeset
14
kono
parents:
diff changeset
15 /* { dg-final { scan-tree-dump-times "__builtin___asan_report_store1" 1 "sanopt" } } */