pike.git / src / pike_memory.h

version» Context lines:

pike.git/src/pike_memory.h:1:   /*   || 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.43 2006/07/02 00:05:45 mast Exp $ + || $Id: pike_memory.h,v 1.44 2008/04/29 19:33:11 mast Exp $   */    - #ifndef MEMORY_H - #define MEMORY_H + #ifndef PIKE_MEMORY_H + #define PIKE_MEMORY_H      #include "global.h"   #include "stralloc.h"      #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. */   
pike.git/src/pike_memory.h:24:   #elif defined(HAVE_VALGRIND_H)   #include <valgrind.h>   #else   #undef HAVE_VALGRIND_MACROS   #endif      #endif /* USE_VALGRIND */      #ifdef HAVE_VALGRIND_MACROS    + #ifndef VALGRIND_MAKE_NOACCESS + #define VALGRIND_MAKE_NOACCESS VALGRIND_MAKE_MEM_NOACCESS + #define VALGRIND_MAKE_WRITABLE VALGRIND_MAKE_MEM_UNDEFINED + #define VALGRIND_MAKE_READABLE VALGRIND_MAKE_MEM_DEFINED + #endif +    /* No Access */   #define PIKE_MEM_NA(lvalue) do { \    PIKE_MEM_NA_RANGE(&(lvalue), sizeof (lvalue)); \    } while (0)   #define PIKE_MEM_NA_RANGE(addr, bytes) do { \    VALGRIND_DISCARD(VALGRIND_MAKE_NOACCESS(addr, bytes)); \    } while (0)      /* Write Only -- Will become RW when having been written to */   #define PIKE_MEM_WO(lvalue) do { \