mymemory: make snapshot_{malloc,calloc,free} externally linkable
authorBrian Norris <banorris@uci.edu>
Wed, 3 Oct 2012 18:05:36 +0000 (11:05 -0700)
committerBrian Norris <banorris@uci.edu>
Wed, 3 Oct 2012 18:05:36 +0000 (11:05 -0700)
As we begin to use these functions, they can't be simply declared
statically in the header; they need to be linkable in hashtable.h, for
instance.

mymemory.cc
mymemory.h

index 6fd7c70..b273608 100644 (file)
@@ -68,6 +68,24 @@ void *model_malloc(size_t size) {
 #endif
 }
 
+/** @brief Snapshotting malloc, for use by model-checker (not user progs) */
+void * snapshot_malloc(size_t size)
+{
+       return malloc(size);
+}
+
+/** @brief Snapshotting calloc, for use by model-checker (not user progs) */
+void * snapshot_calloc(size_t count, size_t size)
+{
+       return calloc(count, size);
+}
+
+/** @brief Snapshotting free, for use by model-checker (not user progs) */
+void snapshot_free(void *ptr)
+{
+       free(ptr);
+}
+
 void *system_malloc( size_t size ){
        static void *(*mallocp)(size_t size);
        char *error;
index 6b35f5d..c49984f 100644 (file)
@@ -31,15 +31,9 @@ void *model_malloc(size_t size);
 void *model_calloc(size_t count, size_t size);
 void model_free(void *ptr);
 
-static inline void * snapshot_malloc(size_t size) {
-       return malloc(size);
-}
-static inline void * snapshot_calloc(size_t count, size_t size) {
-       return calloc(count, size);
-}
-static inline void snapshot_free(void *ptr) {
-       free(ptr);
-}
+void * snapshot_malloc(size_t size);
+void * snapshot_calloc(size_t count, size_t size);
+void snapshot_free(void *ptr);
 
 void system_free( void * ptr );
 void *system_malloc( size_t size );