Add #define parameter and corresponding build option to
authorSteve Reinhardt <stever@eecs.umich.edu>
Tue, 16 Dec 2003 04:55:10 +0000 (20:55 -0800)
committerSteve Reinhardt <stever@eecs.umich.edu>
Tue, 16 Dec 2003 04:55:10 +0000 (20:55 -0800)
disable FastAlloc.  Gcc 3.3.x appears to have a bug that
breaks FastAlloc when compiled with optimization.

base/fast_alloc.cc:
base/fast_alloc.hh:
    #define NO_FAST_ALLOC makes FastAlloc a no-op.

--HG--
extra : convert_revision : bf4bb8e963331c6782f2cfd475a811aa520e31b5

base/fast_alloc.cc
base/fast_alloc.hh

index ff0a40c37bd5d1aa070f61a635652d6cb76de44e..abb50aa0c860804982564d0d0f59d49ac8e6fbf8 100644 (file)
@@ -32,6 +32,8 @@
  * by permission.
  */
 
+#ifndef NO_FAST_ALLOC
+
 #ifdef __GNUC__
 #pragma implementation
 #endif
@@ -189,3 +191,5 @@ fast_alloc_oldest(int n)
 }
 
 #endif
+
+#endif // NO_FAST_ALLOC
index 7d699abd1b1c5583c0ddea8cbb2b5a2e4e087c3a..81f2f1359b90797ff86874036b1708cff311e1ae 100644 (file)
 // (by bucket).
 // #define FAST_ALLOC_STATS
 
+#ifdef NO_FAST_ALLOC
+
+class FastAlloc {
+};
+
+#else
+
 class FastAlloc {
   public:
 
@@ -200,4 +207,6 @@ void FastAlloc::operator delete(void *p, size_t sz)
     deallocate(p, sz);
 }
 
+#endif // NO_FAST_ALLOC
+
 #endif // __FAST_ALLOC_H__