summaryrefslogtreecommitdiffstats
path: root/src/H5P.c
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2004-06-23 15:36:35 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2004-06-23 15:36:35 (GMT)
commit7c3df64cc4742c0316ca81aeef67bd95a5737c70 (patch)
treef6aa023c661a881b2495ea0be4e745b43eea091f /src/H5P.c
parent19644d75931aaa79951830d85eda28de08f17180 (diff)
downloadhdf5-7c3df64cc4742c0316ca81aeef67bd95a5737c70.zip
hdf5-7c3df64cc4742c0316ca81aeef67bd95a5737c70.tar.gz
hdf5-7c3df64cc4742c0316ca81aeef67bd95a5737c70.tar.bz2
[svn-r8731] Purpose:
Code cleanup & minor optimization Description: Re-work the way interface initialization routines are specified in the library to avoid the overhead of checking for them in routines where there is no interface initialization routine. This cleans up warnings with gcc 3.4, reduces the library binary size a bit (about 2-3%) and should speedup the library's execution slightly. Platforms tested: FreeBSD 4.10 (sleipnir) w/gcc34 h5committest
Diffstat (limited to 'src/H5P.c')
-rw-r--r--src/H5P.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/H5P.c b/src/H5P.c
index 2c198ce..af10283 100644
--- a/src/H5P.c
+++ b/src/H5P.c
@@ -19,6 +19,13 @@
#define H5P_PACKAGE /*suppress error about including H5Ppkg */
+/* Interface initialization */
+#define H5_INTERFACE_INIT_FUNC H5P_init_interface
+
+/* Pablo information */
+/* (Put before include files to avoid problems with inline functions) */
+#define PABLO_MASK H5P_mask
+
/* Private header files */
#include "H5private.h" /* Generic Functions */
#include "H5Dprivate.h" /* Datasets */
@@ -29,14 +36,6 @@
#include "H5MMprivate.h" /* Memory management */
#include "H5Ppkg.h" /* Property lists */
-/* Pablo mask */
-#define PABLO_MASK H5P_mask
-
-/* Interface initialization */
-static int interface_initialize_g = 0;
-#define INTERFACE_INIT H5P_init_interface
-static herr_t H5P_init_interface(void);
-
/* Local variables */
/*
@@ -312,7 +311,7 @@ H5P_term_interface(void)
FUNC_ENTER_NOAPI_NOINIT_NOFUNC(H5P_term_interface);
- if (interface_initialize_g) {
+ if (H5_interface_initialize_g) {
/* Destroy HDF5 library property classes & lists */
/* Check if there are any open property list classes or lists */
@@ -357,7 +356,7 @@ H5P_term_interface(void)
H5I_dec_type_ref(H5I_GENPROP_CLS);
n++; /*H5I*/
- interface_initialize_g = 0;
+ H5_interface_initialize_g = 0;
}
}
FUNC_LEAVE_NOAPI(n);