https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69890
--- Comment #3 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
> The problem is that some string functions are defined as inline functions
> using *_chk function variants. object_sizes pass transforms *_chk call
> into original function call in a regular case but not for CHKP wrappers.
> Thus CHKP wrappers need to be supported in object_sizes pass to make these
> tests pass on Darwin.
As in
--- ../_clean/gcc/testsuite/gcc.target/i386/chkp-strlen-1.c 2016-01-20
19:08:43.000000000 +0100
+++ gcc/testsuite/gcc.target/i386/chkp-strlen-1.c 2016-03-29
17:25:30.000000000 +0200
@@ -1,6 +1,6 @@
/* { dg-do compile { target { ! x32 } } } */
/* { dg-options "-fcheck-pointer-bounds -mmpx -O2 -fdump-tree-strlen" } */
-/* { dg-final { scan-tree-dump "memcpy.chkp" "strlen" } } */
+/* { dg-final { scan-tree-dump "memcpy(_chk)?.chkp" "strlen" } } */
#include "string.h"
?
Now
grep memcpy chkp-stropt-1.c.097t.chkpopt
gives
__builtin___memcpy_chk.chkp (buf1_2(D), __chkp_bounds_of_buf1_7(D),
buf2_4(D), __chkp_bounds_of_buf2_8(D), len_5(D), 18446744073709551615);
What should I do for that?