bc: rename zbc_parse_text() to ..._init(), reuse existing code for library parsing
function old new delta zbc_parse_text_init - 123 +123 bc_vm_run 423 398 -25 zbc_parse_text 123 - -123 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 0/1 up/down: 123/-148) Total: -25 bytes text data bss dec hex filename 980154 485 7296 987935 f131f busybox_old 980129 485 7296 987910 f1306 busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
0a23814e98
commit
f86e960e7c
@ -3489,7 +3489,7 @@ static BC_STATUS zcommon_parse(BcParse *p)
|
|||||||
IF_DC(RETURN_STATUS(zdc_parse_parse(p));)
|
IF_DC(RETURN_STATUS(zdc_parse_parse(p));)
|
||||||
}
|
}
|
||||||
|
|
||||||
static BC_STATUS zbc_parse_text(BcParse *p, const char *text)
|
static BC_STATUS zbc_parse_text_init(BcParse *p, const char *text)
|
||||||
{
|
{
|
||||||
BcStatus s;
|
BcStatus s;
|
||||||
|
|
||||||
@ -3507,7 +3507,7 @@ static BC_STATUS zbc_parse_text(BcParse *p, const char *text)
|
|||||||
RETURN_STATUS(zbc_lex_text(&p->l, text));
|
RETURN_STATUS(zbc_lex_text(&p->l, text));
|
||||||
}
|
}
|
||||||
#if ERRORS_ARE_FATAL
|
#if ERRORS_ARE_FATAL
|
||||||
# define zbc_parse_text(...) (zbc_parse_text(__VA_ARGS__), BC_STATUS_SUCCESS)
|
# define zbc_parse_text_init(...) (zbc_parse_text_init(__VA_ARGS__), BC_STATUS_SUCCESS)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Called when parsing or execution detects a failure,
|
// Called when parsing or execution detects a failure,
|
||||||
@ -5394,7 +5394,7 @@ static BC_STATUS zbc_program_read(void)
|
|||||||
bc_parse_create(&parse, BC_PROG_READ);
|
bc_parse_create(&parse, BC_PROG_READ);
|
||||||
bc_lex_file(&parse.l);
|
bc_lex_file(&parse.l);
|
||||||
|
|
||||||
s = zbc_parse_text(&parse, buf.v);
|
s = zbc_parse_text_init(&parse, buf.v);
|
||||||
if (s) goto exec_err;
|
if (s) goto exec_err;
|
||||||
s = zcommon_parse_expr(&parse, BC_PARSE_NOREAD);
|
s = zcommon_parse_expr(&parse, BC_PARSE_NOREAD);
|
||||||
if (s) goto exec_err;
|
if (s) goto exec_err;
|
||||||
@ -6593,7 +6593,7 @@ static BC_STATUS zbc_program_execStr(char *code, size_t *bgn,
|
|||||||
|
|
||||||
if (f->code.len == 0) {
|
if (f->code.len == 0) {
|
||||||
bc_parse_create(&prs, fidx);
|
bc_parse_create(&prs, fidx);
|
||||||
s = zbc_parse_text(&prs, *str);
|
s = zbc_parse_text_init(&prs, *str);
|
||||||
if (s) goto err;
|
if (s) goto err;
|
||||||
s = zcommon_parse_expr(&prs, BC_PARSE_NOCALL);
|
s = zcommon_parse_expr(&prs, BC_PARSE_NOCALL);
|
||||||
if (s) goto err;
|
if (s) goto err;
|
||||||
@ -6919,7 +6919,7 @@ static unsigned bc_vm_envLen(const char *var)
|
|||||||
|
|
||||||
static BC_STATUS zbc_vm_process(const char *text)
|
static BC_STATUS zbc_vm_process(const char *text)
|
||||||
{
|
{
|
||||||
BcStatus s = zbc_parse_text(&G.prs, text);
|
BcStatus s = zbc_parse_text_init(&G.prs, text);
|
||||||
|
|
||||||
if (s) RETURN_STATUS(s);
|
if (s) RETURN_STATUS(s);
|
||||||
|
|
||||||
@ -7320,19 +7320,11 @@ static BC_STATUS zbc_vm_exec(void)
|
|||||||
|
|
||||||
#if ENABLE_BC
|
#if ENABLE_BC
|
||||||
if (option_mask32 & BC_FLAG_L) {
|
if (option_mask32 & BC_FLAG_L) {
|
||||||
|
|
||||||
// We know that internal library is not buggy,
|
// We know that internal library is not buggy,
|
||||||
// thus error checking is normally disabled.
|
// thus error checking is normally disabled.
|
||||||
# define DEBUG_LIB 0
|
# define DEBUG_LIB 0
|
||||||
bc_lex_file(&G.prs.l);
|
bc_lex_file(&G.prs.l);
|
||||||
s = zbc_parse_text(&G.prs, bc_lib);
|
ERROR_RETURN(s =) zbc_vm_process(bc_lib);
|
||||||
if (DEBUG_LIB && s) RETURN_STATUS(s);
|
|
||||||
|
|
||||||
while (G.prs.l.t.t != BC_LEX_EOF) {
|
|
||||||
ERROR_RETURN(s =) zcommon_parse(&G.prs);
|
|
||||||
if (DEBUG_LIB && s) RETURN_STATUS(s);
|
|
||||||
}
|
|
||||||
s = zbc_program_exec();
|
|
||||||
if (DEBUG_LIB && s) RETURN_STATUS(s);
|
if (DEBUG_LIB && s) RETURN_STATUS(s);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user