shrinking miscutils/less.c a bit
Nico Erfurth
masta at perlgolf.de
Sun Feb 24 15:03:30 UTC 2008
Reordering opp_bracket in less.c helped in shrinking it a bit.
make bloatcheck
CC miscutils/less.o
AR miscutils/lib.a
LINK busybox_unstripped
Trying libraries: crypt m
Library crypt is needed
Library m is needed
Final link with: crypt m
function old new delta
opp_bracket 59 41 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-18) Total: -18
bytes
text data bss dec hex filename
628251 2358 9500 640109 9c46d busybox_old
628233 2358 9500 640091 9c45b busybox_unstripped
Patch also fixes a typo in sig_catcher (missing a ';').
(diff is against svn revision 21094)
Nico
Index: miscutils/less.c
===================================================================
--- miscutils/less.c (Revision 21094)
+++ miscutils/less.c (Arbeitskopie)
@@ -1173,16 +1173,20 @@
static char opp_bracket(char bracket)
{
switch (bracket) {
- case '{': case '[':
- return bracket + 2;
- case '(':
- return ')';
- case '}': case ']':
- return bracket - 2;
- case ')':
- return '(';
- }
- return 0;
+ case '{': case '[':
+ bracket++;
+ case '(':
+ bracket++;
+ break;
+ case '}': case ']':
+ bracket--;
+ case ')':
+ bracket--;
+ break;
+ default:
+ return 0;
+ };
+ return bracket;
}
static void match_right_bracket(char bracket)
@@ -1330,7 +1334,7 @@
static void sig_catcher(int sig ATTRIBUTE_UNUSED)
{
- less_exit(1) /* TODO: "suicide mode" for code == -signal */
+ less_exit(1); /* TODO: "suicide mode" for code == -signal */
}
int less_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
More information about the busybox
mailing list