http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54691
--- Comment #7 from Uros Bizjak <ubizjak at gmail dot com> 2012-10-14 16:23:04 UTC --- Created attachment 28445 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=28445 Prototype patch that introduces VALGRIND_MAKE_MEM_DEFINED Attached prototype patch builds on HJ's patch. The patch detects valgrind in the same way as in gcc directory (actually, it just copies relevant bits) and changes: + memset (to.text + to.len + 1, 0, 16); to + VALGRIND_DISCARD (VALGRIND_MAKE_MEM_DEFINED (to.text + to.len + 1, 16)); (BTW: Probably, we should align end of buffer to 16 byte boundary instead of hardcoding 16.) (BTW2: the test in the following code in the patch is obviously wrong: +if test $enable_checking != no ; then + # It is certainly possible that there's valgrind but no valgrind.h. + # GCC relies on making annotations so we must have both. + AC_MSG_CHECKING(for VALGRIND_DISCARD in <valgrind/memcheck.h>) + AC_PREPROC_IFELSE([AC_LANG_SOURCE( ...)