This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug other/54691] [4.8 Regression] --enable-checking=valgrind doesn't build


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(
...)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]