1ab44f52202878cdf2bf22457aeae33ec24089556Elliott Hughes/* $NetBSD: memcluster.h,v 1.1.1.4 2009/04/12 16:35:44 christos Exp $ */ 21dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 31dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/* 41dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Copyright (c) 2004 by Internet Systems Consortium, Inc. ("ISC") 51dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Copyright (c) 1997,1999 by Internet Software Consortium. 61dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 71dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * Permission to use, copy, modify, and distribute this software for any 81dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * purpose with or without fee is hereby granted, provided that the above 91dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * copyright notice and this permission notice appear in all copies. 101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * 111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES 121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 131dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR 141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT 171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 181dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project */ 191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifndef MEMCLUSTER_H 211dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define MEMCLUSTER_H 221dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 231dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#include <stdio.h> 241dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 251dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define meminit __meminit 261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifdef MEMCLUSTER_DEBUG 271dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memget(s) __memget_debug(s, __FILE__, __LINE__) 281dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memput(p, s) __memput_debug(p, s, __FILE__, __LINE__) 291dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#else /*MEMCLUSTER_DEBUG*/ 301dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifdef MEMCLUSTER_RECORD 311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memget(s) __memget_record(s, __FILE__, __LINE__) 321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memput(p, s) __memput_record(p, s, __FILE__, __LINE__) 331dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#else /*MEMCLUSTER_RECORD*/ 341dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memget __memget 351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memput __memput 361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif /*MEMCLUSTER_RECORD*/ 371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif /*MEMCLUSTER_DEBUG*/ 381dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memstats __memstats 391dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define memactive __memactive 401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectint meminit(size_t, size_t); 421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid * __memget(size_t); 431dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid __memput(void *, size_t); 441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid * __memget_debug(size_t, const char *, int); 451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid __memput_debug(void *, size_t, const char *, int); 461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid * __memget_record(size_t, const char *, int); 471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid __memput_record(void *, size_t, const char *, int); 481dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectvoid memstats(FILE *); 491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectint memactive(void); 501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project 511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif /* MEMCLUSTER_H */ 52ab44f52202878cdf2bf22457aeae33ec24089556Elliott Hughes/*! \file */ 53