From 7465dbcf2a4c0a0983d40e5c0f5c057d2ed04125 Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sun, 13 Apr 2008 02:25:53 +0000 Subject: ash: speed up NOFORK code in ash by eliminating second find_applet(). some code reduction along the way. function old new delta run_list 1971 1981 +10 run_nofork_applet_prime 181 182 +1 unsetcmd 97 96 -1 delete_cmd_entry 54 53 -1 describe_command 399 397 -2 cmdlookup 152 150 -2 evaltreenr 602 599 -3 evaltree 602 599 -3 clearcmdentry 101 98 -3 cdcmd 675 672 -3 hashcmd 305 301 -4 find_command 933 910 -23 evalcommand 1371 1229 -142 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/11 up/down: 11/-187) Total: -176 bytes --- shell/hush.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'shell/hush.c') diff --git a/shell/hush.c b/shell/hush.c index 545367cb6..aa740f1b4 100644 --- a/shell/hush.c +++ b/shell/hush.c @@ -1861,7 +1861,7 @@ static int run_pipe(struct pipe *pi) //sp: if (child->sp) argv_expanded = expand_strvec_to_strvec(argv + i); debug_printf_exec(": run_nofork_applet '%s' '%s'...\n", argv_expanded[0], argv_expanded[1]); - rcode = run_nofork_applet_prime(&nofork_save, a, argv_expanded) & 0xff; + rcode = run_nofork_applet_prime(&nofork_save, a, argv_expanded); free(argv_expanded); restore_redirects(squirrel); debug_printf_exec("run_pipe return %d\n", rcode); -- cgit v1.2.3