summaryrefslogtreecommitdiffstats
path: root/src/H5HG.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-04-06 13:13:05 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-04-06 13:13:05 (GMT)
commitfc152eff1c4a7118f43bddb6ac3c9b3c4d69bfac (patch)
tree32b827b1ee2be3a49f159225c2597de10a4cd248 /src/H5HG.c
parent3a0524dfa9d0067392c9a8bbb9a31934aa8e90ba (diff)
downloadhdf5-fc152eff1c4a7118f43bddb6ac3c9b3c4d69bfac.zip
hdf5-fc152eff1c4a7118f43bddb6ac3c9b3c4d69bfac.tar.gz
hdf5-fc152eff1c4a7118f43bddb6ac3c9b3c4d69bfac.tar.bz2
[svn-r8302] Purpose:
Code optimization Description: Move handling for free list arrays that have no maximum size to separate set of routines and optimize computations for free list arrays with maximum size to avoid re-computing sizes all the time. Platforms tested: h5committest Solaris 2.7 (arabica)
Diffstat (limited to 'src/H5HG.c')
-rw-r--r--src/H5HG.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/H5HG.c b/src/H5HG.c
index 26d7a3d..1a2415e 100644
--- a/src/H5HG.c
+++ b/src/H5HG.c
@@ -175,7 +175,7 @@ static int interface_initialize_g = 0;
H5FL_DEFINE_STATIC(H5HG_heap_t);
/* Declare a free list to manage arrays of H5HG_obj_t's */
-H5FL_ARR_DEFINE_STATIC(H5HG_obj_t,-1);
+H5FL_SEQ_DEFINE_STATIC(H5HG_obj_t);
/* Declare a PQ free list to manage heap chunks */
H5FL_BLK_DEFINE_STATIC(heap_chunk);
@@ -231,7 +231,7 @@ H5HG_create (H5F_t *f, hid_t dxpl_id, size_t size)
if (NULL==(heap->chunk = H5FL_BLK_MALLOC (heap_chunk,size)))
HGOTO_ERROR (H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed");
heap->nalloc = H5HG_NOBJS (f, size);
- if (NULL==(heap->obj = H5FL_ARR_CALLOC (H5HG_obj_t,heap->nalloc)))
+ if (NULL==(heap->obj = H5FL_SEQ_CALLOC (H5HG_obj_t,heap->nalloc)))
HGOTO_ERROR (H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed");
/* Initialize the header */
@@ -369,7 +369,7 @@ H5HG_load (H5F_t *f, hid_t dxpl_id, haddr_t addr, const void UNUSED * udata1,
/* Decode each object */
p = heap->chunk + H5HG_SIZEOF_HDR (f);
nalloc = H5HG_NOBJS (f, heap->size);
- if (NULL==(heap->obj = H5FL_ARR_CALLOC (H5HG_obj_t,nalloc)))
+ if (NULL==(heap->obj = H5FL_SEQ_CALLOC (H5HG_obj_t,nalloc)))
HGOTO_ERROR (H5E_RESOURCE, H5E_NOSPACE, NULL, "memory allocation failed");
heap->nalloc = nalloc;
while (p<heap->chunk+heap->size) {
@@ -532,7 +532,7 @@ H5HG_dest (H5F_t *f, H5HG_heap_t *heap)
}
}
heap->chunk = H5FL_BLK_FREE(heap_chunk,heap->chunk);
- heap->obj = H5FL_ARR_FREE(H5HG_obj_t,heap->obj);
+ heap->obj = H5FL_SEQ_FREE(H5HG_obj_t,heap->obj);
H5FL_FREE (H5HG_heap_t,heap);
FUNC_LEAVE_NOAPI(SUCCEED);