function old new delta
bc_program_index 66 64 -2
bc_parse_expr_empty_ok 1840 1838 -2
dc_main 176 168 -8
bc_main 73 65 -8
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/4 up/down: 0/-20) Total: -20 bytes
text data bss dec hex filename
980327 485 7296 988108 f13cc busybox_old
980307 485 7296 988088 f13b8 busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
IF_FEATURE_BC_SIGNALS(smallint ttyin;)
IF_FEATURE_CLEAN_UP(smallint exiting;)
smallint in_read;
- char sbgn;
- char send;
BcParse prs;
BcProgram prog;
while (*string) {
char c = *string;
if (string == buffer.v || string[-1] != '\\') {
- // checking applet type is cheaper than accessing sbgn/send
- if (IS_BC) // bc: sbgn = send = '"'
+ if (IS_BC)
str ^= (c == '"');
- else { // dc: sbgn = '[', send = ']'
+ else {
if (c == ']')
str -= 1;
else if (c == '[')
int is_tty;
INIT_G();
- G.sbgn = G.send = '"';
is_tty = bc_vm_init("BC_LINE_LENGTH");
int noscript;
INIT_G();
- G.sbgn = '[';
- G.send = ']';
/*
* TODO: dc (GNU bc 1.07.1) 1.4.1 seems to use width
* 1 char wider than bc from the same package.