1 /* PR sanitizer/108777 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fno-sanitize=all -fsanitize=kernel-address --param asan-kernel-mem-intrinsic-prefix=1" } */
4 /* { dg-final { scan-assembler "__asan_memcpy" } } */
5 /* { dg-final { scan-assembler "__asan_memset" } } */
6 /* { dg-final { scan-assembler "__asan_memmove" } } */
7
8 extern void *memcpy (void *, const void *, __SIZE_TYPE__);
9 extern void *memmove (void *, const void *, __SIZE_TYPE__);
10 extern void *memset (void *, int, __SIZE_TYPE__);
11
12 void
13 foo (void *p, void *q, int s)
14 {
15 memcpy (p, q, s);
16 }
17
18 void
19 bar (void *p, void *q, int s)
20 {
21 memmove (p, q, s);
22 }
23
24 void
25 baz (void *p, int c, int s)
26 {
27 memset (p, c, s);
28 }