diff options
author | Denys Vlasenko | 2015-10-07 22:42:45 +0200 |
---|---|---|
committer | Denys Vlasenko | 2015-10-07 22:42:45 +0200 |
commit | d60752f8c9be5689a249ad518deb38061d4bc45e (patch) | |
tree | 06df5c7e22be59561cbbcd22eb63ff95344fe321 /shell | |
parent | 8c0708a329618b20089eb9cedbe06522dd25d9be (diff) | |
download | busybox-d60752f8c9be5689a249ad518deb38061d4bc45e.zip busybox-d60752f8c9be5689a249ad518deb38061d4bc45e.tar.gz |
build system: -fno-builtin-printf
Benefits are: drops reference to out-of-line putchar(), fixes a few cases
of failed string merge.
function old new delta
i2cdump_main 1488 1502 +14
sha256_process_block64 423 433 +10
sendmail_main 1183 1185 +2
list_table 1114 1116 +2
i2cdetect_main 1235 1237 +2
fdisk_main 2852 2854 +2
builtin_type 119 121 +2
unicode_conv_to_printable2 325 324 -1
scan_recursive 380 378 -2
mkfs_minix_main 2687 2684 -3
buffer_fill_and_print 178 169 -9
putchar 152 - -152
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 7/4 up/down: 34/-167) Total: -133 bytes
text data bss dec hex filename
937788 932 17676 956396 e97ec busybox_old
937564 932 17676 956172 e970c busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ash.c | 2 | ||||
-rw-r--r-- | shell/hush.c | 2 | ||||
-rw-r--r-- | shell/shell_common.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/shell/ash.c b/shell/ash.c index b835415..7d20b88 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -9681,7 +9681,7 @@ preadfd(void) } # if ENABLE_ASH_IDLE_TIMEOUT else if (errno == EAGAIN && timeout > 0) { - printf("\007timed out waiting for input: auto-logout\n"); + puts("\007timed out waiting for input: auto-logout"); exitshell(); } # endif diff --git a/shell/hush.c b/shell/hush.c index bccd9c1..f085ed3 100644 --- a/shell/hush.c +++ b/shell/hush.c @@ -6794,7 +6794,7 @@ static int checkjobs(struct pipe *fg_pipe) int sig = WTERMSIG(status); if (i == fg_pipe->num_cmds-1) /* TODO: use strsignal() instead for bash compat? but that's bloat... */ - printf("%s\n", sig == SIGINT || sig == SIGPIPE ? "" : get_signame(sig)); + puts(sig == SIGINT || sig == SIGPIPE ? "" : get_signame(sig)); /* TODO: if (WCOREDUMP(status)) + " (core dumped)"; */ /* TODO: MIPS has 128 sigs (1..128), what if sig==128 here? * Maybe we need to use sig | 128? */ diff --git a/shell/shell_common.c b/shell/shell_common.c index 2b6f7dc..8c9607c 100644 --- a/shell/shell_common.c +++ b/shell/shell_common.c @@ -380,7 +380,7 @@ static void printlim(unsigned opts, const struct rlimit *limit, val = limit->rlim_cur; if (val == RLIM_INFINITY) - printf("unlimited\n"); + puts("unlimited"); else { val >>= l->factor_shift; printf("%llu\n", (long long) val); |