From 4c2732a1dad1de295c9219ee3afac007b2d7ba05 Mon Sep 17 00:00:00 2001 From: Josh Stone Date: Wed, 28 Jan 2009 14:36:08 -0800 Subject: Use 'static' as much as possible This change just inserts 'static' on runtime, tapset, and generated C functions and globals, so the compiler can do a better job of optimizing. My tests with small scripts show ~10% reduction in compile time and ~20% reduction in module size. Larger scripts may show less benefit, but I expect purely positive results. --- runtime/print.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'runtime/print.c') diff --git a/runtime/print.c b/runtime/print.c index 14a0820b..54919876 100644 --- a/runtime/print.c +++ b/runtime/print.c @@ -39,16 +39,16 @@ typedef struct __stp_pbuf { char buf[STP_BUFFER_SIZE]; } _stp_pbuf; -void *Stp_pbuf = NULL; +static void *Stp_pbuf = NULL; /** private buffer for _stp_log() */ #define STP_LOG_BUF_LEN 256 typedef char _stp_lbuf[STP_LOG_BUF_LEN]; -void *Stp_lbuf = NULL; +static void *Stp_lbuf = NULL; /* create percpu print and io buffers */ -int _stp_print_init (void) +static int _stp_print_init (void) { Stp_pbuf = _stp_alloc_percpu(sizeof(_stp_pbuf)); if (unlikely(Stp_pbuf == 0)) @@ -63,7 +63,7 @@ int _stp_print_init (void) return 0; } -void _stp_print_cleanup (void) +static void _stp_print_cleanup (void) { if (Stp_pbuf) _stp_free_percpu(Stp_pbuf); @@ -171,7 +171,7 @@ static void _stp_print_binary (int num, ...) * * @sa _stp_print_flush() */ -void _stp_printf (const char *fmt, ...) +static void _stp_printf (const char *fmt, ...) { int num; va_list args; @@ -207,7 +207,7 @@ void _stp_printf (const char *fmt, ...) * @param str A C string (char *) */ -void _stp_print (const char *str) +static void _stp_print (const char *str) { _stp_pbuf *pb = per_cpu_ptr(Stp_pbuf, smp_processor_id()); char *end = pb->buf + STP_BUFFER_SIZE; @@ -231,7 +231,7 @@ void _stp_print (const char *str) pb->len = ptr - pb->buf; } -void _stp_print_char (const char c) +static void _stp_print_char (const char c) { char *buf; _stp_pbuf *pb = per_cpu_ptr(Stp_pbuf, smp_processor_id()); @@ -274,7 +274,7 @@ static char *next_fmt(char *fmt, int *num) return f; } -void _stp_print_kernel_info(char *vstr, int ctx, int num_probes) +static void _stp_print_kernel_info(char *vstr, int ctx, int num_probes) { #ifdef DEBUG_MEM printk(KERN_DEBUG "%s: systemtap: %s, base: %p, memory: %lu+%lu+%u+%u+%u data+text+ctx+net+alloc, probes: %d\n", -- cgit From 321b13b9ac2a395db1c7591cfe86bddfc0944e25 Mon Sep 17 00:00:00 2001 From: David Smith Date: Wed, 18 Feb 2009 09:29:39 -0600 Subject: Removed unused functions and variables. 2009-02-18 David Smith * io.c (_stp_log): Removed unused function. * map.c (_stp_cmp): Replace _stp_log() with dbug(). * mempool.c (_stp_mempool_resize): Removed unused function. * print.c (next_fmt): Removed unused function. * procfs.c: Removed unused variable '_stp_num_procfs_files'. * regs.c (_stp_ret_addr): Removed unused function. * string.c (_stp_text_str): Removed unused variable 'len'. * string.h: Removed unused variable '_stdout_' and function declaration for deleted function '_stp_vsprintf'. * sym.c: Removed unused variables. * unwind.c (_stp_create_unwind_hdr): Removed unused function. 2009-02-18 David Smith * control.c: Removed unused variable '_stp_current_buffers'. * procfs.c (_stp_set_buffers): Removed unused function. (_stp_register_ctl_channel_fs): Removed unused variables and label. * symbols.c (u32_swap): Removed unused function. (generic_swap): Ditto. (_stp_sort): Ditto. (_stp_section_is_interesting): Ditto. * transport.c (_stp_transport_init): Removed unused variable 'ret'. --- runtime/print.c | 36 ++---------------------------------- 1 file changed, 2 insertions(+), 34 deletions(-) (limited to 'runtime/print.c') diff --git a/runtime/print.c b/runtime/print.c index 54919876..2c84d3c9 100644 --- a/runtime/print.c +++ b/runtime/print.c @@ -1,6 +1,6 @@ /* -*- linux-c -*- * Print Functions - * Copyright (C) 2007-2008 Red Hat Inc. + * Copyright (C) 2007-2009 Red Hat Inc. * * This file is part of systemtap, and is free software. You can * redistribute it and/or modify it under the terms of the GNU General @@ -41,7 +41,7 @@ typedef struct __stp_pbuf { static void *Stp_pbuf = NULL; -/** private buffer for _stp_log() */ +/** private buffer for _stp_vlog() */ #define STP_LOG_BUF_LEN 256 typedef char _stp_lbuf[STP_LOG_BUF_LEN]; @@ -233,7 +233,6 @@ static void _stp_print (const char *str) static void _stp_print_char (const char c) { - char *buf; _stp_pbuf *pb = per_cpu_ptr(Stp_pbuf, smp_processor_id()); int size = STP_BUFFER_SIZE - pb->len; if (unlikely(1 >= size)) @@ -243,37 +242,6 @@ static void _stp_print_char (const char c) pb->len ++; } -/* This function is used when printing maps or stats. */ -/* Probably belongs elsewhere, but is here for now. */ -/* It takes a format specification like those used for */ -/* printing maps and stats. It prints chars until it sees */ -/* a special format char (beginning with '%'. Then it */ -/* returns a pointer to that. */ -static char *next_fmt(char *fmt, int *num) -{ - char *f = fmt; - int in_fmt = 0; - *num = 0; - while (*f) { - if (in_fmt) { - if (*f == '%') { - _stp_print_char('%'); - in_fmt = 0; - } else if (*f > '0' && *f <= '9') { - *num = *f - '0'; - f++; - return f; - } else - return f; - } else if (*f == '%') - in_fmt = 1; - else - _stp_print_char(*f); - f++; - } - return f; -} - static void _stp_print_kernel_info(char *vstr, int ctx, int num_probes) { #ifdef DEBUG_MEM -- cgit