[svn:parrot] r40638 - trunk/src/gc
chromatic at svn.parrot.org
chromatic at svn.parrot.org
Tue Aug 18 22:20:56 UTC 2009
Author: chromatic
Date: Tue Aug 18 22:20:56 2009
New Revision: 40638
URL: https://trac.parrot.org/parrot/changeset/40638
Log:
[GC] Tided some code and removed some compiler warnings with casts.
Modified:
trunk/src/gc/gc_ms.c
Modified: trunk/src/gc/gc_ms.c
==============================================================================
--- trunk/src/gc/gc_ms.c Tue Aug 18 21:52:32 2009 (r40637)
+++ trunk/src/gc/gc_ms.c Tue Aug 18 22:20:56 2009 (r40638)
@@ -424,18 +424,21 @@
(*pool->more_objects)(interp, pool);
free_list = (PObj *)pool->free_list;
}
+
if (!free_list) {
Small_Object_Arena * const arena = pool->last_Arena;
- ptr = (PObj *)pool->newfree;
+ ptr = (PObj *)pool->newfree;
pool->newfree = (void *)((char *)pool->newfree + pool->object_size);
arena->used++;
+
if (pool->newfree >= pool->newlast)
pool->newfree = NULL;
- PARROT_ASSERT(ptr < pool->newlast);
+
+ PARROT_ASSERT(ptr < (PObj *)pool->newlast);
}
else {
- ptr = free_list;
- pool->free_list = ((GC_MS_PObj_Wrapper*)ptr)->next_ptr;
+ ptr = free_list;
+ pool->free_list = ((GC_MS_PObj_Wrapper *)ptr)->next_ptr;
}
#else
/* if we don't have any objects */
@@ -455,6 +458,7 @@
return ptr;
}
+
/*
=item C<static void gc_ms_alloc_objects(PARROT_INTERP, Small_Object_Pool *pool)>
@@ -581,20 +585,23 @@
#if GC_USE_LAZY_ALLOCATOR
if (!free_list && !pool->newfree) {
(*pool->more_objects)(interp, pool);
- free_list = (PObj *)pool->free_list;
+ free_list = (PMC_EXT *)pool->free_list;
}
+
if (!free_list) {
Small_Object_Arena * const arena = pool->last_Arena;
- ptr = (PMC_EXT *)pool->newfree;
+
+ ptr = (PMC_EXT *)pool->newfree;
pool->newfree = (void *)((char *)pool->newfree + pool->object_size);
+
if (pool->newfree >= pool->newlast)
pool->newfree = NULL;
arena->used++;
- PARROT_ASSERT(ptr < pool->newlast);
+ PARROT_ASSERT(ptr < (PMC_EXT *)pool->newlast);
}
else {
- ptr = free_list;
- pool->free_list = ptr->_next_for_GC;
+ ptr = free_list;
+ pool->free_list = ptr->_next_for_GC;
ptr->_next_for_GC = NULL;
}
#else
@@ -603,6 +610,7 @@
(*pool->more_objects)(interp, pool);
free_list = (PMC_EXT *)pool->free_list;
}
+
ptr = free_list;
pool->free_list = ptr->_next_for_GC;
ptr->_next_for_GC = NULL;
@@ -613,6 +621,7 @@
return ptr;
}
+
/*
=back
More information about the parrot-commits
mailing list