Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ea5cad2a0d 
					 
					
						
						
							
							bc: avoid bc_vec_item() calls in bc_vm_run()  
						
						... 
						
						
						
						function                                             old     new   delta
bc_vm_run                                            124     112     -12
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 18:09:31 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						eac0de55d6 
					 
					
						
						
							
							bc: avoid bc_vec_item() calls in bc_array_copy()  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_copyToVar                                311     300     -11
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 17:59:30 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						87888ce4d8 
					 
					
						
						
							
							bc: avoid successive bc_vec_item(&func->autos, i)  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_func_insert                                       97     100      +3
zbc_program_call                                     353     354      +1
zbc_program_exec                                    4085    4078      -7
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 4/-7)               Total: -3 bytes
   text	   data	    bss	    dec	    hex	filename
 981403	    485	   7296	 989184	  f1800	busybox_old
 981400	    485	   7296	 989181	  f17fd	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 17:55:23 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						f36a0adf8b 
					 
					
						
						
							
							bc: remove unnecessary union use  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 17:15:04 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						dfe1dd2031 
					 
					
						
						
							
							bc: "unsigned_n > 0" is shorter code than "unsigned_n >= 1"  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_print                                    680     677      -3
zbc_program_exec                                    4089    4085      -4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-7)               Total: -7 bytes
   text	   data	    bss	    dec	    hex	filename
 981404	    485	   7296	 989185	  f1801	busybox_old
 981397	    485	   7296	 989178	  f17fa	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 17:09:01 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						65e1046abf 
					 
					
						
						
							
							bc: open-code bc_parse_updateFunc() macro  
						
						... 
						
						
						
						This clearly shows one place which would need changing
for nested funcdefs to work.
function                                             old     new   delta
bc_parse_reset                                       106     110      +4
zbc_vm_process                                       586     585      -1
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 4/-1)                Total: 3 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 15:13:14 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						684d441f5c 
					 
					
						
						
							
							bc: make bc_program_addFunc() return new idx, untangle &p->fidx interaction  
						
						... 
						
						
						
						In:
       bc_program_addFunc(name, idx);
       p->func = bc_program_func(p->fidx);
in some cases p->fidx was updated by _first_ statement - because passed idx
was pointing at it. This was very obscure.
function                                             old     new   delta
zdc_parse_expr                                       653     658      +5
bc_program_addFunc                                   204     201      -3
zbc_vm_process                                       594     586      -8
bc_vm_init                                           663     655      -8
zbc_parse_name                                       482     472     -10
bc_parse_addFunc                                      25       -     -25
zbc_program_asciify                                  473     447     -26
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/5 up/down: 5/-80)             Total: -75 bytes
   text	   data	    bss	    dec	    hex	filename
 981482	    485	   7296	 989263	  f184f	busybox_old
 981401	    485	   7296	 989182	  f17fe	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 14:59:22 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						085b420220 
					 
					
						
						
							
							bc: "reload stack only after insts" change missed a few places  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 14:02:59 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						5aa54830bf 
					 
					
						
						
							
							bc: rename a few functions  
						
						... 
						
						
						
						function                                             old     new   delta
bc_map_find_ge                                         -      71     +71
bc_map_find_exact                                      -      50     +50
bc_map_index                                          50       -     -50
bc_map_find                                           71       -     -71
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 0/0 up/down: 121/-121)            Total: 0 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 13:55:53 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						e3d3d2067d 
					 
					
						
						
							
							bc: remove redundant strdup+free in zbc_parse_call()  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_name                                       527     482     -45
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-45)             Total: -45 bytes
   text	   data	    bss	    dec	    hex	filename
 981541	    485	   7296	 989322	  f188a	busybox_old
 981486	    485	   7296	 989267	  f1853	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 13:20:02 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						4796a1d537 
					 
					
						
						
							
							bc: delete G.prog.strmb for real  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 12:48:16 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						b80d7aad1b 
					 
					
						
						
							
							bc: in execution loop, reload stack only after insts which can change it  
						
						... 
						
						
						
						Only these functions affect G.prog.exestack:
zbc_program_read
zbc_program_call
zbc_program_return
zbc_program_nquit
zbc_program_execStr
function                                             old     new   delta
zbc_program_exec                                    3995    4093     +98
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 98/0)               Total: 98 bytes
   text	   data	    bss	    dec	    hex	filename
 981364	    485	   7296	 989145	  f17d9	busybox_old
 981462	    485	   7296	 989243	  f183b	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-19 12:35:27 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d6e24bd795 
					 
					
						
						
							
							bc: simplify bc_array_expand()  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 20:10:48 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						30a8e0c2f9 
					 
					
						
						
							
							bc: code shrink  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_print                                    684     680      -4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-4)               Total: -4 bytes
   text	   data	    bss	    dec	    hex	filename
 981368	    485	   7296	 989149	  f17dd	busybox_old
 981364	    485	   7296	 989145	  f17d9	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 19:20:04 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						694d2982e5 
					 
					
						
						
							
							bc: code shrink  
						
						... 
						
						
						
						function                                             old     new   delta
bc_program_name                                       67      63      -4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-4)               Total: -4 bytes
   text	   data	    bss	    dec	    hex	filename
 981372	    485	   7296	 989153	  f17e1	busybox_old
 981368	    485	   7296	 989149	  f17dd	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 19:17:11 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						7b30bc0222 
					 
					
						
						
							
							bc: shrink bc_program_pushVar()  
						
						... 
						
						
						
						function                                             old     new   delta
bc_program_pushVar                                   203     198      -5
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 17:14:34 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d340143247 
					 
					
						
						
							
							bc: get rid of G.prog.ob, G.prog.strmb  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_num_printNum                                     489     540     +51
zbc_program_asciify                                  426     473     +47
zbc_program_print                                    686     684      -2
zbc_program_exec                                    4008    3995     -13
zbc_program_assign                                   474     440     -34
bc_vm_init                                           739     663     -76
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/4 up/down: 98/-125)           Total: -27 bytes
   text	   data	    bss	    dec	    hex	filename
 981404	    485	   7296	 989185	  f1801	busybox_old
 981377	    485	   7296	 989158	  f17e6	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 17:00:35 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						09fe0aaefa 
					 
					
						
						
							
							bc: do not show -i in --help, it's a NOP (for now)  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 16:32:25 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						7f2d59c38d 
					 
					
						
						
							
							bc: style edit, no code changes  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 16:24:07 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						3f940c9c70 
					 
					
						
						
							
							bc: shrink bc_program_index()  
						
						... 
						
						
						
						function                                             old     new   delta
bc_program_index                                      66      47     -19
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-19)             Total: -19 bytes
   text	   data	    bss	    dec	    hex	filename
 981418	    485	   7296	 989199	  f180f	busybox_old
 981399	    485	   7296	 989180	  f17fc	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 15:49:42 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						55f3cab7e9 
					 
					
						
						
							
							bc: fix "echo -n '#foo' | bc" not eating last 'o'  
						
						... 
						
						
						
						function                                             old     new   delta
zdc_parse_expr                                       656     653      -3
bc_lex_lineComment                                    39      36      -3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-6)               Total: -6 bytes
   text	   data	    bss	    dec	    hex	filename
 981424	    485	   7296	 989205	  f1815	busybox_old
 981418	    485	   7296	 989199	  f180f	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 14:39:33 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a199cc95b7 
					 
					
						
						
							
							bc: shrink zdc_parse_expr()  
						
						... 
						
						
						
						function                                             old     new   delta
zdc_parse_expr                                       656     653      -3
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 14:11:35 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						07597cd35d 
					 
					
						
						
							
							bc: optimize zbc_lex_string()  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_lex_next                                        2359    2353      -6
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 14:03:20 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ef271da33f 
					 
					
						
						
							
							bc: shrink zdc_lex_string()  
						
						... 
						
						
						
						This actually fixes a rather obscure bug. This was failing to find
end of the string:
	$ echo -n '[foo]' | dc
	dc: string end could not be found
function                                             old     new   delta
zbc_lex_next                                        2230    2141     -89
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-89)             Total: -89 bytes
   text	   data	    bss	    dec	    hex	filename
 981461	    485	   7296	 989242	  f183a	busybox_old
 981372	    485	   7296	 989153	  f17e1	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 13:48:37 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d4258dd321 
					 
					
						
						
							
							bc: another for() loop simplified  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_print                                    688     686      -2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 13:22:23 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						5c0c5abba0 
					 
					
						
						
							
							bc: simplify another for() loop  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_num_d                                            563     557      -6
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 13:15:55 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						6b0fbd14fc 
					 
					
						
						
							
							bc: rewrite more for() loops  
						
						... 
						
						
						
						function                                             old     new   delta
bc_program_name                                       75      67      -8
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 12:55:40 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						71c82d1d8c 
					 
					
						
						
							
							bc: rewrite another for() loop  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_num_d                                            570     563      -7
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 12:43:21 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						e2e6ffd3c5 
					 
					
						
						
							
							bc: replace signed division / 10 by unsigned  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_num_a                                            443     441      -2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 12:23:16 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						4113e1f2cd 
					 
					
						
						
							
							bc: rewrite bc_num_compare() to be readable  
						
						... 
						
						
						
						function                                             old     new   delta
bc_num_compare                                        59      51      -8
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 03:30:23 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						57734c926b 
					 
					
						
						
							
							bc: fold zbc_num_stream() into its single caller  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 03:30:23 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						f6e3f8511e 
					 
					
						
						
							
							bc: get rid of BcNum BcProgram::ib,hexb  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_num                                      907     943     +36
zbc_program_assign                                   485     474     -11
bc_vm_init                                           757     739     -18
bc_num_ten                                            30       -     -30
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/2 up/down: 36/-59)            Total: -23 bytes
   text	   data	    bss	    dec	    hex	filename
 981532	    485	   7296	 989313	  f1881	busybox_old
 981509	    485	   7296	 989290	  f186a	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 03:30:23 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						0f31a5c79e 
					 
					
						
						
							
							bc: fixes to bugs found while testing 64-bit build  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 03:16:48 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						f4f10720fe 
					 
					
						
						
							
							bc: fixed from 64-bit compile  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-18 02:23:53 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						4b72aebe80 
					 
					
						
						
							
							bc: remove "error after expression parsing" check  
						
						... 
						
						
						
						It is misplaced: caller knows better what can or cannot follow the expression.
Sometimes even caller's caller: "if (1) return a+b else..." -
parser of "return" does not know that "else" after it is valid,
parser of stmt does not know it either, - only parser of
"if" knows it!
The removed code balked on e.g. "{ print 1 }" statement.
This does not break any valid programs, but starts accepting some
invalid ones, e.g. "print 1 print 2" would work.
function                                             old     new   delta
zcommon_parse_expr                                    40      32      -8
zbc_parse_name                                       509     494     -15
zbc_parse_stmt_possibly_auto                        1678    1638     -40
bc_parse_expr_empty_ok                              2025    1977     -48
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/4 up/down: 0/-111)           Total: -111 bytes
   text	   data	    bss	    dec	    hex	filename
 981599	    485	   7296	 989380	  f18c4	busybox_old
 981488	    485	   7296	 989269	  f1855	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 17:00:29 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						b44a7f1d66 
					 
					
						
						
							
							bc: tighten up input NUL handling  
						
						... 
						
						
						
						function                                             old     new   delta
static.dc_lex_tokens                                   -      90     +90
bc_error_bad_character                                17      31     +14
static.dc_lex_regs                                     -      13     +13
bc_read_line                                         406     410      +4
bc_program_index                                      64      66      +2
dc_lex_regs                                           13       -     -13
zdc_parse_expr                                       671     656     -15
zbc_lex_next                                        2318    2230     -88
dc_lex_tokens                                         91       -     -91
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 3/2 up/down: 123/-207)          Total: -84 bytes
   text	   data	    bss	    dec	    hex	filename
 981667	    485	   7296	 989448	  f1908	busybox_old
 981599	    485	   7296	 989380	  f18c4	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 11:58:20 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						e42cc19b51 
					 
					
						
						
							
							bc: simplify zdc_parse_string()  
						
						... 
						
						
						
						function                                             old     new   delta
bc_program_index                                      64      66      +2
zdc_parse_expr                                       671     656     -15
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 2/-15)             Total: -13 bytes
   text	   data	    bss	    dec	    hex	filename
 981667	    485	   7296	 989448	  f1908	busybox_old
 981655	    485	   7296	 989436	  f18fc	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 11:02:26 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						59d4ce935e 
					 
					
						
						
							
							bc: use common strings  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 10:42:31 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ec60318f15 
					 
					
						
						
							
							bc: tidy up "z-function" macro machinery  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 10:34:02 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						e4ba4c4371 
					 
					
						
						
							
							bc: parse file arguments piecemeal (do not read entire file)  
						
						... 
						
						
						
						function                                             old     new   delta
bc_read_line                                         336     406     +70
zbc_vm_execute_FILE                                    -      67     +67
zbc_lex_next                                        2309    2318      +9
zbc_program_exec                                    4002    4008      +6
bc_program_index                                      66      64      -2
bc_vm_run                                            139     124     -15
zbc_vm_file                                          208      32    -176
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 3/3 up/down: 152/-193)          Total: -41 bytes
   text	   data	    bss	    dec	    hex	filename
 981736	    485	   7296	 989517	  f194d	busybox_old
 981667	    485	   7296	 989448	  f1908	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 09:51:43 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						c5774a3458 
					 
					
						
						
							
							bc: move fflush to the _actual_ execution loop  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 01:22:53 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						51b22b1bce 
					 
					
						
						
							
							bc: fix typo: defone -> define  
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 00:15:35 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						94f72a387c 
					 
					
						
						
							
							bc: factor out common code  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_allow_NLINE_before                      -      59     +59
bc_parse_pushJUMP_ZERO                                 -      27     +27
bc_parse_pushJUMP                                      -      27     +27
rewrite_label_to_current                               -      19     +19
zbc_vm_process                                       594     599      +5
zbc_lex_next_and_skip_NLINE                           22       -     -22
zbc_parse_stmt_fail_if_bare_NLINE                     28       -     -28
zbc_parse_stmt_possibly_auto                        1909    1678    -231
------------------------------------------------------------------------------
(add/remove: 4/2 grow/shrink: 1/1 up/down: 137/-281)         Total: -144 bytes
   text	   data	    bss	    dec	    hex	filename
 981879	    485	   7296	 989660	  f19dc	busybox_old
 981755	    485	   7296	 989536	  f1960	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-17 00:07:48 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						5ebd2a6128 
					 
					
						
						
							
							bc: remove use of "BcInstPtr ip" object from loop parsing  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_possibly_auto                        1964    1909     -55
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-55)             Total: -55 bytes
   text	   data	    bss	    dec	    hex	filename
 981934	    485	   7296	 989715	  f1a13	busybox_old
 981879	    485	   7296	 989660	  f19dc	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-16 23:35:04 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						266aa00012 
					 
					
						
						
							
							bc: store only index in p->exits, it's the only thing used there  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_possibly_auto                        1967    1964      -3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-3)               Total: -3 bytes
   text	   data	    bss	    dec	    hex	filename
 981937	    485	   7296	 989718	  f1a16	busybox_old
 981934	    485	   7296	 989715	  f1a13	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-16 23:24:25 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						8e7686e457 
					 
					
						
						
							
							bc: p->exits.func is never zero, do not check for that  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_possibly_auto                        1978    1967     -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-11)             Total: -11 bytes
   text	   data	    bss	    dec	    hex	filename
 981948	    485	   7296	 989729	  f1a21	busybox_old
 981937	    485	   7296	 989718	  f1a16	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-16 23:18:28 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						de24e9d366 
					 
					
						
						
							
							bc: remove redundant JUMP generation when parsing 'while'  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_possibly_auto                        2065    2025     -40
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-40)             Total: -40 bytes
   text	   data	    bss	    dec	    hex	filename
 982035	    485	   7296	 989816	  f1a78	busybox_old
 981995	    485	   7296	 989776	  f1a50	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-16 23:02:22 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						06ade77002 
					 
					
						
						
							
							bc: simplify use of "ip" in loop parsing functions  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_possibly_auto                        2106    2065     -41
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-41)             Total: -41 bytes
   text	   data	    bss	    dec	    hex	filename
 982076	    485	   7296	 989857	  f1aa1	busybox_old
 982035	    485	   7296	 989816	  f1a78	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-16 22:44:51 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						146a79d19c 
					 
					
						
						
							
							bc: shring bc_lib[]  
						
						... 
						
						
						
						function                                             old     new   delta
bc_lib                                              1586    1584      -2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-16 21:46:11 +01:00 
						 
				 
			
				
					
						
							
							
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						15850832be 
					 
					
						
						
							
							bc: shrink zbc_parse_if() a bit more  
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_possibly_auto                        2180    2106     -74
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-74)             Total: -74 bytes
   text	   data	    bss	    dec	    hex	filename
 982152	    485	   7296	 989933	  f1aed	busybox_old
 982078	    485	   7296	 989859	  f1aa3	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-16 21:41:17 +01:00