- Enable the new zval cache on debug too. No real reason not to, and it keeps

the code cleaner.
- ZTS compile fixes
This commit is contained in:
Zeev Suraski 1999-12-26 23:20:18 +00:00
parent b90bc0b15c
commit 3c50b7ee45
5 changed files with 18 additions and 22 deletions

View File

@ -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"

View File

@ -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"

View File

@ -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);

View File

@ -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;

View File

@ -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
/*