[git commit] bc: simplify zbc_program_logical()
Denys Vlasenko
vda.linux at googlemail.com
Tue Dec 11 23:51:53 UTC 2018
commit: https://git.busybox.net/busybox/commit/?id=16494f557fd742ca484943407888fb8a349c01ee
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master
function old new delta
bc_program_exec 3918 3876 -42
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-42) Total: -42 bytes
text data bss dec hex filename
982061 485 7296 989842 f1a92 busybox_old
982019 485 7296 989800 f1a68 busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
miscutils/bc.c | 21 ++++++++++-----------
1 file changed, 10 insertions(+), 11 deletions(-)
diff --git a/miscutils/bc.c b/miscutils/bc.c
index 791275c8c..8426998d0 100644
--- a/miscutils/bc.c
+++ b/miscutils/bc.c
@@ -5793,8 +5793,7 @@ static BC_STATUS zbc_program_logical(char inst)
BcStatus s;
BcResult *opd1, *opd2, res;
BcNum *n1, *n2;
- bool cond = 0;
- ssize_t cmp;
+ ssize_t cond;
s = zbc_program_binOpPrep(&opd1, &n1, &opd2, &n2, false);
if (s) RETURN_STATUS(s);
@@ -5806,25 +5805,25 @@ static BC_STATUS zbc_program_logical(char inst)
else if (inst == BC_INST_BOOL_OR)
cond = bc_num_cmp(n1, &G.prog.zero) || bc_num_cmp(n2, &G.prog.zero);
else {
- cmp = bc_num_cmp(n1, n2);
+ cond = bc_num_cmp(n1, n2);
switch (inst) {
case BC_INST_REL_EQ:
- cond = cmp == 0;
+ cond = (cond == 0);
break;
case BC_INST_REL_LE:
- cond = cmp <= 0;
+ cond = (cond <= 0);
break;
case BC_INST_REL_GE:
- cond = cmp >= 0;
- break;
- case BC_INST_REL_NE:
- cond = cmp != 0;
+ cond = (cond >= 0);
break;
case BC_INST_REL_LT:
- cond = cmp < 0;
+ cond = (cond < 0);
break;
case BC_INST_REL_GT:
- cond = cmp > 0;
+ cond = (cond > 0);
+ break;
+ default: // = case BC_INST_REL_NE:
+ //cond = (cond != 0); - not needed
break;
}
}
More information about the busybox-cvs
mailing list