public inbox for gdb-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] [gdb/contrib] Combine sed invocations in words.sh script
@ 2019-11-22 15:23 Tom de Vries
0 siblings, 0 replies; only message in thread
From: Tom de Vries @ 2019-11-22 15:23 UTC (permalink / raw)
To: gdb-cvs
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=f618007364b84739f6f8663c1c634fb47bbc6732
commit f618007364b84739f6f8663c1c634fb47bbc6732
Author: Tom de Vries <tdevries@suse.de>
Date: Fri Nov 22 16:23:22 2019 +0100
[gdb/contrib] Combine sed invocations in words.sh script
Currently running words.sh on all the c source and header files in the repo
takes ~16s in user time:
...
$ time ./gdb/contrib/words.sh \
$(find -type f -name "*.c" -o -name "*.h") \
>/dev/null
real 0m7,787s
user 0m16,349s
sys 0m0,367s
...
Rewrite the sed invocations using the -e option from this:
...
| sed <sedprog1>
| sed <sedprog2>
...
into this:
...
| sed \
-e <sedprog1>
-e <sedprog2>
...
and reduce user time to ~11s:
...
$ time ./gdb/contrib/words.sh \
$(find -type f -name "*.c" -o -name "*.h") \
>/dev/null
real 0m7,243s
user 0m11,220s
sys 0m0,205s
...
gdb/ChangeLog:
2019-11-22 Tom de Vries <tdevries@suse.de>
* contrib/words.sh: Combine sed invocations.
Change-Id: Ib08453f3712f32ed02d9f503ee960711ebb9421b
Diff:
---
gdb/ChangeLog | 4 ++++
gdb/contrib/words.sh | 11 ++++++-----
2 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 81c6690..25c63c7 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2019-11-22 Tom de Vries <tdevries@suse.de>
+
+ * contrib/words.sh: Combine sed invocations.
+
2019-11-21 Christian Biesinger <cbiesinger@google.com>
* Makefile.in: Update.
diff --git a/gdb/contrib/words.sh b/gdb/contrib/words.sh
index ae38539..8c4fdd0 100755
--- a/gdb/contrib/words.sh
+++ b/gdb/contrib/words.sh
@@ -114,12 +114,13 @@ export LC_ALL=C
awk \
-f "$awkfile" \
-- "$@" \
- | sed 's/[%^$~#{}`&=@,. \t\/_()|<>\+\*-]/\n/g' \
- | sed 's/\[/\n/g' \
- | sed 's/\]/\n/g' \
- | sed 's/[0-9][0-9]*/\n/g' \
+ | sed \
+ -e 's/[%^$~#{}`&=@,. \t\/_()|<>\+\*-]/\n/g' \
+ -e 's/\[/\n/g' \
+ -e 's/\]/\n/g' \
+ -e 's/[0-9][0-9]*/\n/g' \
+ -e 's/[ \t]*//g' \
| tr '[:upper:]' '[:lower:]' \
- | sed 's/[ \t]*//g' \
| sort \
| uniq -c \
| awk "{ if (($minfreq == 0 || $minfreq <= \$1) \
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2019-11-22 15:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-22 15:23 [binutils-gdb] [gdb/contrib] Combine sed invocations in words.sh script Tom de Vries
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).