This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
[patch] Inline a function that is only used once
- From: "Bonzini Paolo" <paolo dot bonzini at lu dot unisi dot ch>
- To: <libc-alpha at sources dot redhat dot com>
- Date: Wed, 27 Oct 2004 15:55:09 +0200
- Subject: [patch] Inline a function that is only used once
This patch inlines a function that is only used once. Freeing the subtops is logically tied to resetting the number of subtops, but it is done in a separate function.
Ok?
Paolo
2004-10-27 Paolo Bonzini <bonzini@gnu.org>
* posix/regexec.c (match_ctx_free_subtops): Remove, merge into...
(match_ctx_clean): ... this function.
(match_ctx_free): Call match_ctx_clean.
diff -ru lib_mio/regexec.c lib/regexec.c
--- lib_mio/regexec.c 2004-10-27 13:03:14.000000000 +0200
+++ lib/regexec.c 2004-10-27 12:56:46.000000000 +0200
@@ -22,8 +22,6 @@
int n) internal_function;
static void match_ctx_clean (re_match_context_t *mctx) internal_function;
static void match_ctx_free (re_match_context_t *cache) internal_function;
-static void match_ctx_free_subtops (re_match_context_t *mctx)
- internal_function;
static reg_errcode_t match_ctx_add_entry (re_match_context_t *cache, int node,
int str_idx, int from, int to)
internal_function;
@@ -4103,28 +4101,6 @@
match_ctx_clean (mctx)
re_match_context_t *mctx;
{
- match_ctx_free_subtops (mctx);
- mctx->nsub_tops = 0;
- mctx->nbkref_ents = 0;
-}
-
-/* Free all the memory associated with MCTX. */
-
-static void
-match_ctx_free (mctx)
- re_match_context_t *mctx;
-{
- match_ctx_free_subtops (mctx);
- re_free (mctx->sub_tops);
- re_free (mctx->bkref_ents);
-}
-
-/* Free all the memory associated with MCTX->SUB_TOPS. */
-
-static void
-match_ctx_free_subtops (mctx)
- re_match_context_t *mctx;
-{
int st_idx;
for (st_idx = 0; st_idx < mctx->nsub_tops; ++st_idx)
{
@@ -4144,6 +4118,21 @@
}
free (top);
}
+
+ mctx->nsub_tops = 0;
+ mctx->nbkref_ents = 0;
+}
+
+/* Free all the memory associated with MCTX. */
+
+static void
+match_ctx_free (mctx)
+ re_match_context_t *mctx;
+{
+ /* First, free all the memory associated with MCTX->SUB_TOPS. */
+ match_ctx_clean (mctx);
+ re_free (mctx->sub_tops);
+ re_free (mctx->bkref_ents);
}
/* Add a new backreference entry to MCTX.