2006-07-02
2006-07-02 00:05:45 by Martin Stjernholm <mast@lysator.liu.se>
-
b4082436e349b3a15e6b2cec04d627ef3ad314f6
(17 lines)
(+14/-3)
[
Show
| Annotate
]
Branch: 7.9
Fixed case when valgrind is available but its header files aren't.
Rev: src/pike_memory.h:1.52
2:
|| This file is part of Pike. For copyright information see COPYRIGHT.
|| Pike is distributed under GPL, LGPL and MPL. See the file COPYING
|| for more information.
- || $Id: pike_memory.h,v 1.51 2005/05/25 16:59:39 grubba Exp $
+ || $Id: pike_memory.h,v 1.52 2006/07/02 00:05:45 mast Exp $
*/
#ifndef MEMORY_H
13: Inside #if defined(USE_VALGRIND)
#ifdef USE_VALGRIND
+ #define HAVE_VALGRIND_MACROS
+ /* Assume that any of the following header files have the macros we
+ * need. Haven't checked if it's true or not. */
+
#ifdef HAVE_MEMCHECK_H
#include <memcheck.h>
#elif defined(HAVE_VALGRIND_MEMCHECK_H)
#include <valgrind/memcheck.h>
#elif defined(HAVE_VALGRIND_H)
#include <valgrind.h>
-
+ #else
+ #undef HAVE_VALGRIND_MACROS
#endif
-
+ #endif /* USE_VALGRIND */
+
+ #ifdef HAVE_VALGRIND_MACROS
+
/* No Access */
#define PIKE_MEM_NA(lvalue) do { \
PIKE_MEM_NA_RANGE(&(lvalue), sizeof (lvalue)); \
56:
/* Return true if a memchecker is in use. */
#define PIKE_MEM_CHECKER() RUNNING_ON_VALGRIND
- #else
+ #else /* !HAVE_VALGRIND_MACROS */
#define PIKE_MEM_NA(lvalue) do {} while (0)
#define PIKE_MEM_NA_RANGE(addr, bytes) do {} while (0)
68:
#define PIKE_MEM_RO_RANGE(addr, bytes) do {} while (0)
#define PIKE_MEM_CHECKER() 0
- #endif /* USE_VALGRIND */
+ #endif /* !HAVE_VALGRIND_MACROS */
#define MEMSEARCH_LINKS 512