diff options
author | Zeev Suraski <zeev@php.net> | 1999-12-26 23:20:18 +0000 |
---|---|---|
committer | Zeev Suraski <zeev@php.net> | 1999-12-26 23:20:18 +0000 |
commit | 3c50b7ee456edfea6d6227c7333578a680c2ac85 (patch) | |
tree | 650edf921d22760ee7815c8526409f402637c0f4 | |
parent | b90bc0b15c87c1651689f191c7e9101508aacfe7 (diff) | |
download | php-git-3c50b7ee456edfea6d6227c7333578a680c2ac85.tar.gz |
- Enable the new zval cache on debug too. No real reason not to, and it keeps
the code cleaner.
- ZTS compile fixes
-rw-r--r-- | Zend/Zend.dsp | 4 | ||||
-rw-r--r-- | Zend/ZendTS.dsp | 4 | ||||
-rw-r--r-- | Zend/zend_alloc.c | 9 | ||||
-rw-r--r-- | Zend/zend_globals.h | 2 | ||||
-rw-r--r-- | Zend/zend_zval_alloc.h | 21 |
5 files changed, 18 insertions, 22 deletions
diff --git a/Zend/Zend.dsp b/Zend/Zend.dsp index 90fe19498d..e30c62f75f 100644 --- a/Zend/Zend.dsp +++ b/Zend/Zend.dsp @@ -268,6 +268,10 @@ SOURCE=.\zend_stack.h SOURCE=.\zend_variables.h
# End Source File
+# Begin Source File
+
+SOURCE=.\zend_zval_alloc.h
+# End Source File
# End Group
# Begin Group "Parsers"
diff --git a/Zend/ZendTS.dsp b/Zend/ZendTS.dsp index b773d76ce8..6fcb29d9b6 100644 --- a/Zend/ZendTS.dsp +++ b/Zend/ZendTS.dsp @@ -272,6 +272,10 @@ SOURCE=.\zend_stack.h SOURCE=.\zend_variables.h
# End Source File
+# Begin Source File
+
+SOURCE=.\zend_zval_alloc.h
+# End Source File
# End Group
# Begin Group "Parsers"
diff --git a/Zend/zend_alloc.c b/Zend/zend_alloc.c index b100526e96..55a2dec123 100644 --- a/Zend/zend_alloc.c +++ b/Zend/zend_alloc.c @@ -315,6 +315,7 @@ ZEND_API int zend_set_memory_limit(unsigned int memory_limit) ZEND_API void start_memory_manager(ALS_D) { AG(phead) = AG(head) = NULL; + AG(zval_list_head) = NULL; #if MEMORY_LIMIT AG(memory_limit)=1<<30; /* rediculous limit, effectively no limit */ @@ -322,9 +323,6 @@ ZEND_API void start_memory_manager(ALS_D) AG(memory_exhausted)=0; #endif -#if !ZEND_DEBUG - AG(zval_list_head) = NULL; -#endif memset(AG(cache_count),0,MAX_CACHED_MEMORY*sizeof(unsigned char)); } @@ -335,12 +333,10 @@ ZEND_API void shutdown_memory_manager(int silent, int clean_cache) zend_mem_header *p, *t; #if ZEND_DEBUG int had_leaks=0; -#else - zend_zval_list_entry *zval_list_entry, *next_zval_list_entry; #endif + zend_zval_list_entry *zval_list_entry, *next_zval_list_entry; ALS_FETCH(); -#if !ZEND_DEBUG zval_list_entry = AG(zval_list_head); while (zval_list_entry) { next_zval_list_entry = zval_list_entry->next; @@ -348,7 +344,6 @@ ZEND_API void shutdown_memory_manager(int silent, int clean_cache) zval_list_entry = next_zval_list_entry; } AG(zval_list_head) = NULL; -#endif p=AG(head); t=AG(head); diff --git a/Zend/zend_globals.h b/Zend/zend_globals.h index 5a08c11a82..b03bca1d15 100644 --- a/Zend/zend_globals.h +++ b/Zend/zend_globals.h @@ -179,9 +179,7 @@ struct _zend_alloc_globals { zend_mem_header *phead; /* persistent list */ void *cache[MAX_CACHED_MEMORY][MAX_CACHED_ENTRIES]; unsigned char cache_count[MAX_CACHED_MEMORY]; -#if !ZEND_DEBUG void *zval_list_head; -#endif #if MEMORY_LIMIT unsigned int memory_limit; diff --git a/Zend/zend_zval_alloc.h b/Zend/zend_zval_alloc.h index 1f469f4a6b..38677ce76d 100644 --- a/Zend/zend_zval_alloc.h +++ b/Zend/zend_zval_alloc.h @@ -25,20 +25,15 @@ #include "zend_globals_macros.h" #include "zend_alloc.h" -#if ZEND_DEBUG - -# define ALLOC_ZVAL(z) (z) = emalloc(sizeof(zval)) -# define FREE_ZVAL(z) efree(z) - -#else /* !ZEND_DEBUG */ - -extern zend_alloc_globals alloc_globals; - typedef struct _zend_zval_list_entry { struct _zend_zval_list_entry *next; } zend_zval_list_entry; +#ifndef ZTS +extern zend_alloc_globals alloc_globals; +#endif + #define ALLOC_ZVAL(z) \ { \ ALS_FETCH(); \ @@ -51,15 +46,15 @@ typedef struct _zend_zval_list_entry { } -#define FREE_ZVAL(z) \ - { \ +#define FREE_ZVAL(z) \ + { \ + ALS_FETCH(); \ + \ ((zend_zval_list_entry *) (z))->next = AG(zval_list_head); \ AG(zval_list_head) = (zend_zval_list_entry *) (z); \ } -#endif /* !ZEND_DEBUG */ - #endif /* |