bc: shrink s() in library again

function                                             old     new   delta
bc_lib                                              1596    1586     -10
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-10)             Total: -10 bytes
   text	   data	    bss	    dec	    hex	filename
 980152	    485	   7296	 987933	  f131d	busybox_old
 980142	    485	   7296	 987923	  f1313	busybox_unstripped

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2018-12-14 11:27:09 +01:00
parent fc9d26902b
commit 240d7ee3fc

View File

@ -7213,16 +7213,13 @@ static const char bc_lib[] ALIGN1 = {
"\n" "return(r/1)"
"\n" "}"
"\n" "define s(x){"
"\n" "auto b,s,r,n,a,q,i"
"\n" "auto b,s,r,a,q,i"
"\n" "if(x<0)return(-s(-x))"
"\n" "b=ibase"
"\n" "ibase=A"
"\n" "s=scale"
"\n" "scale=1.1*s+2"
"\n" "a=a(1)"
"\n" "if(x<0){"
"\n" "n=1"
"\n" "x=-x"
"\n" "}"
"\n" "scale=0"
"\n" "q=(x/a+2)/4"
"\n" "x-=4*q*a"
@ -7236,7 +7233,6 @@ static const char bc_lib[] ALIGN1 = {
"\n" "}"
"\n" "scale=s"
"\n" "ibase=b"
"\n" "if(n)r=-r"
"\n" "return(r/1)"
"\n" "}"
"\n" "define c(x){"