From 990d0f63eeb502c8762076e5c5499196e09cba55 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Tue, 24 Jul 2007 15:54:42 +0000 Subject: Replace index_in_[sub]str_array with index_in_[sub]strings, which scans thru "abc\0def\0123\0\0" type strings. Saves 250 bytes. text data bss dec hex filename 781266 1328 11844 794438 c1f46 busybox_old 781010 1328 11844 794182 c1e46 busybox_unstripped --- coreutils/expr.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'coreutils/expr.c') diff --git a/coreutils/expr.c b/coreutils/expr.c index ab182a804..6a4683d90 100644 --- a/coreutils/expr.c +++ b/coreutils/expr.c @@ -277,14 +277,13 @@ static VALUE *eval7(void) static VALUE *eval6(void) { - static const char * const keywords[] = { - "quote", "length", "match", "index", "substr", NULL - }; + static const char keywords[] = + "quote\0""length\0""match\0""index\0""substr\0"; VALUE *r, *i1, *i2; VALUE *l = l; /* silence gcc */ VALUE *v = v; /* silence gcc */ - int key = *G.args ? index_in_str_array(keywords, *G.args) + 1 : 0; + int key = *G.args ? index_in_strings(keywords, *G.args) + 1 : 0; if (key == 0) /* not a keyword */ return eval7(); -- cgit v1.2.3