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?

Reply via email to