diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 2004-04-06 13:13:05 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 2004-04-06 13:13:05 (GMT) |
commit | fc152eff1c4a7118f43bddb6ac3c9b3c4d69bfac (patch) | |
tree | 32b827b1ee2be3a49f159225c2597de10a4cd248 /src/H5HG.c | |
parent | 3a0524dfa9d0067392c9a8bbb9a31934aa8e90ba (diff) | |
download | hdf5-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.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -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); |