Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						b1b7996a2a 
					 
					
						
						
							
							bc: remove all logic for multi-line buffering  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_vm_process                                       865     874      +9
zbc_parse_text_init                                   51      38     -13
bc_read_line                                         394     345     -49
peek_inbuf                                           292      69    -223
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/3 up/down: 9/-285)           Total: -276 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-26 18:46:03 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						7d32e25bf3 
					 
					
						
						
							
							bc: prepare for char-by-char input handling  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
peek_inbuf                                             -     292    +292
parse_lex_by_checking_eq_sign                          -      26     +26
eat_inbuf                                              -      22     +22
zbc_vm_execute_FILE                                   52      61      +9
bc_lex_lineComment                                    29      30      +1
zbc_lex_number                                       174     172      -2
bc_vm_run                                            104      99      -5
zbc_num_divmod                                       156     150      -6
bc_lex_file                                           24       -     -24
bc_lex_assign                                         26       -     -26
zbc_lex_next                                        1982    1587    -395
------------------------------------------------------------------------------
(add/remove: 3/2 grow/shrink: 2/4 up/down: 350/-458)         Total: -108 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-26 18:32:43 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						63ad799384 
					 
					
						
						
							
							bc: fix handling of comment/string interactions while buffering input  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_lex_next                                        1965    1982     +17
zbc_num_divmod                                       150     156      +6
bc_read_line                                         411     394     -17
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 23/-17)              Total: 6 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-26 12:23:05 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						94576d2b97 
					 
					
						
						
							
							bc: fix interactive handling of comments in strings and quotes in comments  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_lex_next                                        1965    1979     +14
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 23:45:57 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						c192b0442b 
					 
					
						
						
							
							bc: simplify input pointer manipulation while lexing  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
bc_lex_name                                           70      68      -2
zbc_lex_number                                       177     174      -3
bc_vm_init                                           679     676      -3
bc_lex_whitespace                                     42      39      -3
zbc_parse_text_init                                   55      51      -4
bc_lex_lineComment                                    37      29      -8
bc_lex_assign                                         34      26      -8
zbc_lex_next                                        2039    1965     -74
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/8 up/down: 0/-105)           Total: -105 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 23:15:59 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ecb62edd47 
					 
					
						
						
							
							bc: fold struct BcLex into BcParse  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 22:32:41 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						6e6182342e 
					 
					
						
						
							
							bc: move BcLex::lex member to be the first in struct globals  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_exec                                    3967    4003     +36
zdc_program_execStr                                  501     520     +19
zbc_posix_error_fmt                                   58      62      +4
bc_vm_init                                           675     679      +4
bc_read_line                                         407     411      +4
bc_error_fmt                                          36      40      +4
zdc_parse_register                                    45      44      -1
zdc_parse_exprs_until_eof                             28      27      -1
zbc_parse_text_init                                   56      55      -1
zbc_parse_stmt_allow_NLINE_before                     55      54      -1
zbc_lex_skip_if_at_NLINE                              19      18      -1
zbc_lex_number                                       178     177      -1
bc_parse_create                                       97      96      -1
bc_lex_whitespace                                     43      42      -1
bc_lex_name                                           71      70      -1
bc_lex_lineComment                                    38      37      -1
bc_lex_assign                                         35      34      -1
zdc_parse_expr                                       476     473      -3
bc_verror_msg                                         93      90      -3
bc_lex_file                                           27      24      -3
zbc_parse_name                                       453     448      -5
bc_parse_expr_empty_ok                              1776    1764     -12
zbc_vm_process                                       878     865     -13
zbc_parse_stmt_possibly_auto                        1451    1425     -26
zbc_lex_next                                        2075    2039     -36
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 6/19 up/down: 71/-112)          Total: -41 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 22:20:14 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						0b0e8d0509 
					 
					
						
						
							
							bc: rename some members and macros, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 21:44:10 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						3f8752c33f 
					 
					
						
						
							
							bc: shorten error messages  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 21:28:25 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Gavin Howard 
							
						 
					 
					
						
						
							
						
						fa495ce498 
					 
					
						
						
							
							bc: make it clear that the code is adapted  
						
						 
						
						... 
						
						
						
						Signed-off-by: Gavin Howard <yzena.tech@gmail.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 20:53:15 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a2e62e3e50 
					 
					
						
						
							
							bc: stop passing a pointer to G.prs down the call chain  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
rewrite_label_to_current                              19      26      +7
bc_lex_assign                                         28      35      +7
zbc_lex_skip_if_at_NLINE                              14      19      +5
bc_parse_push                                         11      16      +5
bc_parse_operator                                    147     152      +5
bc_parse_create                                       92      97      +5
bc_lex_whitespace                                     38      43      +5
bc_lex_name                                           66      71      +5
bc_lex_lineComment                                    33      38      +5
zbc_lex_number                                       174     178      +4
zbc_parse_text_init                                   53      56      +3
zdc_parse_register                                    43      45      +2
zdc_parse_exprs_until_eof                             26      28      +2
bc_parse_free                                         38      40      +2
bc_lex_file                                           28      27      -1
zbc_parse_pushSTR                                     65      63      -2
bc_parse_expr_empty_ok                              1778    1776      -2
zbc_vm_execute_FILE                                   55      52      -3
bc_vm_init                                           678     675      -3
zbc_parse_stmt_allow_NLINE_before                     59      55      -4
bc_parse_pushNUM                                      80      74      -6
bc_parse_pushJUMP_ZERO                                27      21      -6
bc_parse_pushJUMP                                     27      21      -6
bc_vm_run                                            112     104      -8
bc_parse_pushName                                     39      31      -8
bc_parse_pushIndex                                    60      52      -8
zbc_parse_name                                       468     453     -15
zdc_program_execStr                                  524     501     -23
zdc_parse_mem                                         93      70     -23
zbc_program_exec                                    4003    3967     -36
zdc_parse_expr                                       518     476     -42
zbc_vm_process                                       923     878     -45
zbc_lex_next                                        2158    2070     -88
zbc_parse_stmt_possibly_auto                        1560    1451    -109
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 14/20 up/down: 62/-438)        Total: -376 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 20:40:55 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						1fbe35a7d8 
					 
					
						
						
							
							bc: make zbc_program_read() and zdc_program_execStr() use G.prs  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_print                                    656     683     +27
zbc_program_exec                                    3976    4003     +27
zdc_program_execStr                                  512     524     +12
bc_num_printNewline                                   45      54      +9
bc_num_printHex                                       61      67      +6
bc_num_printDigits                                   131     137      +6
dc_num_printChar                                      21      24      +3
bc_vm_init                                           675     678      +3
zbc_program_assign                                   424     426      +2
bc_read_line                                         410     407      -3
bc_verror_msg                                         99      93      -6
zbc_lex_next                                        2167    2158      -9
zbc_vm_execute_FILE                                   67      55     -12
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 9/4 up/down: 95/-30)             Total: 65 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 19:38:13 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						53e569c06b 
					 
					
						
						
							
							bc: fix interactive read()  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 19:37:23 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						2638454464 
					 
					
						
						
							
							bc: add code to detect errors like "print 1 print 2"  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_vm_process                                       831     925     +94
zbc_program_exec                                    3964    3976     +12
zdc_program_execStr                                  506     512      +6
zbc_lex_next                                        2161    2167      +6
zbc_program_assign                                   419     424      +5
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/0 up/down: 123/0)             Total: 123 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 18:37:52 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						5fa74b9efc 
					 
					
						
						
							
							bc: allow {break} and {continue} (allow RBRACE to terminate them)  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_parse_stmt_possibly_auto                        1599    1560     -39
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 17:07:51 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d4b721cc8b 
					 
					
						
						
							
							bc: shrink parsing code a bit more, disallow "auto a b c" (without commas)  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
bc_parse_expr_empty_ok                              1791    1785      -6
zbc_parse_stmt_possibly_auto                        1675    1599     -76
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-82)             Total: -82 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 16:39:01 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						73b3ebc0e1 
					 
					
						
						
							
							bc: simplify bc_parse_expr_empty_ok()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
bc_parse_expr_empty_ok                              1810    1791     -19
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 01:43:52 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d0238d83f0 
					 
					
						
						
							
							bc: simplify bc_parse_expr_empty_ok()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
bc_parse_expr_empty_ok                              1819    1810      -9
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 01:21:16 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						bb116031a0 
					 
					
						
						
							
							bc: simplify bc_parse_expr_empty_ok()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
bc_parse_expr_empty_ok                              1846    1819     -27
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-25 01:16:37 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d897c9aca6 
					 
					
						
						
							
							bc: BC_RESULT_ONE is bc-specific  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 23:41:31 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						0c45bb22a0 
					 
					
						
						
							
							bc: partially deinline BC_PARSE_LEAF() macro  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
ok_in_expr                                             -      30     +30
bc_parse_expr_empty_ok                              1972    1846    -126
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 30/-126)           Total: -96 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 23:22:40 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a17d95d0d0 
					 
					
						
						
							
							bc: rename lexer variables, use smallints where appropriate  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
bc_parse_expr_empty_ok                              1966    1972      +6
zdc_parse_expr                                       514     518      +4
zbc_lex_number                                       177     174      -3
dc_num_printChar                                      24      21      -3
bc_lex_whitespace                                     41      38      -3
bc_lex_name                                           69      66      -3
bc_lex_lineComment                                    36      33      -3
bc_lex_assign                                         31      28      -3
zbc_parse_name                                       472     468      -4
zbc_vm_process                                       836     831      -5
zdc_program_execStr                                  512     506      -6
zbc_parse_text_init                                   59      53      -6
bc_num_printNewline                                   51      45      -6
bc_num_printHex                                       67      61      -6
bc_num_printDigits                                   137     131      -6
zbc_program_assign                                   426     419      -7
zbc_parse_stmt_possibly_auto                        1682    1675      -7
zbc_program_exec                                    3977    3964     -13
zbc_program_print                                    683     656     -27
zbc_lex_next                                        2233    2161     -72
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/18 up/down: 10/-183)         Total: -173 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 22:55:54 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d279d809ac 
					 
					
						
						
							
							bc: fix "bc -s" only warning on "define f()<newline>", not exiting  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 18:28:56 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						79587cb442 
					 
					
						
						
							
							bc: POSIX error/warn functions can be 'z' functions too  
						
						 
						
						... 
						
						
						
						In non-interactive config, they either return 'success', or do not return.
function                                             old     new   delta
zbc_posix_error_fmt                                   41      39      -2
bc_parse_expr_empty_ok                              1751    1744      -7
zbc_parse_stmt_possibly_auto                        1322    1314      -8
------------------------------------------------------------------------------
(add/remove: 5/5 grow/shrink: 0/2 up/down: 118/-135)          Total: -17 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 18:11:41 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						65b6fe09c4 
					 
					
						
						
							
							bc: remove unnecessary NULL initializers  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_assign                                   442     426     -16
zbc_program_exec                                    4043    3977     -66
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-82)             Total: -82 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 17:21:31 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a5bf53e4bb 
					 
					
						
						
							
							bc: move relational LEXs before math LEXs - shorten dc_LEX_to_INST[]  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
dc_LEX_to_INST                                        48      42      -6
zdc_parse_expr                                       523     514      -9
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-15)             Total: -15 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 17:07:20 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						4accb6bba8 
					 
					
						
						
							
							bc: offset dc_LEX_to_INST[] start  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zdc_parse_expr                                       516     523      +7
dc_LEX_to_INST                                        56      48      -8
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 7/-8)               Total: -1 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 15:29:33 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						23ea0734e1 
					 
					
						
						
							
							bc: rename  BC_LEX_NLINE/WHITESPACE/STR/NAME/NUMBER to XC_LEX_  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 15:05:49 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						9d9c97efbd 
					 
					
						
						
							
							bc: separate many bc and dc LEX constants  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zdc_parse_expr                                       510     516      +6
bc_parse_expr_empty_ok                              1963    1966      +3
dc_LEX_to_INST                                        83      56     -27
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 9/-27)             Total: -18 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 15:00:56 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						69560f42da 
					 
					
						
						
							
							bc: rename several BC_LEX_OPs to XC_LEX_OPs.  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 14:14:23 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						abf6cf6765 
					 
					
						
						
							
							bc: move BC_LEX_OP_INC/DEC to the end of operation LEX constants  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 13:20:57 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						7d9be0bc6d 
					 
					
						
						
							
							bc: rename BC_LEXs to XC_LEXs for common constants, and to DC_LEXs for dc-specific  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 12:25:20 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						2097ac8d9e 
					 
					
						
						
							
							bc: move functions/macros around, no code changes  
						
						 
						
						... 
						
						
						
						Order now is:
enums/structures/defines,
utility/common functions,
parsing,
execution,
main loop,
main()
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 05:00:36 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a7732d1120 
					 
					
						
						
							
							bc: rename common INST constants to XC_, dc-specific ones to DC_  
						
						 
						
						... 
						
						
						
						This will assist in disentangling dc and bc LEX constants
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 04:26:07 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						81293c8af0 
					 
					
						
						
							
							dc: without -x, do not parse extended regs: 's p' means: store to ' ' reg, print  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_lex_next                                        2240    2233      -7
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-7)               Total: -7 bytes
   text	   data	    bss	    dec	    hex	filename
 981437	    485	   7296	 989218	  f1822	busybox_old
 981412	    485	   7296	 989193	  f1809	busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 02:01:32 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						73b2c60825 
					 
					
						
						
							
							bc: fix incorrect bit in BC_PARSE_EXPRS_BITS: 'limits' is not allowed  
						
						 
						
						... 
						
						
						
						Alsl, move and rename dc_lex_tokens[] to dc_char_to_LEX[]
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 01:04:21 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ad0bd381e9 
					 
					
						
						
							
							bc: for "dc only" remove handling of LAST, move OBASE enums up to IBASE  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
dc_LEX_to_INST                                         -      82     +82
bc_parse_pushNUM                                       -      62     +62
zbc_program_num                                      981     978      -3
bc_result_free                                        46      43      -3
zbc_program_binOpPrep                                305     300      -5
static.msg                                            24      12     -12
zbc_program_exec                                    4013    3994     -19
zdc_parse_expr                                       583     507     -76
dc_parse_insts                                        83       -     -83
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 0/6 up/down: 144/-201)          Total: -57 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-24 00:50:32 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						9471bd4660 
					 
					
						
						
							
							bc: fix empty lines in dc generating "bad token" message  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zdc_program_asciify                                    -     370    +370
zbc_program_pushArray                                  -     147    +147
zbc_vm_process                                       824     828      +4
zbc_program_exec                                    4182    4046    -136
zdc_program_printStream                              146       -    -146
zbc_program_read                                     268       -    -268
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 1/1 up/down: 521/-550)          Total: -29 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-23 00:13:15 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						01eb5e9da1 
					 
					
						
						
							
							bc: shrink modular exponentiation code  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zdc_program_modexp                                   721     694     -27
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 23:59:21 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						1acac7f9c5 
					 
					
						
						
							
							bc: do not yet allow 2^2.1  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 23:14:48 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a9f59db809 
					 
					
						
						
							
							bc: avoid having to twiddle b->neg in zbc_num_p()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_num_ulong_abs                                      -      70     +70
zbc_num_p                                            424     413     -11
zbc_num_ulong                                         81      21     -60
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/2 up/down: 70/-71)             Total: -1 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 21:52:30 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						2ea8ddf8c2 
					 
					
						
						
							
							bc: do not disallow powers to N.0000 degree - it's even shorter code  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_num_p                                            440     424     -16
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 21:45:18 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						1557b76edd 
					 
					
						
						
							
							bc: shrink zbc_num_ulong()  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 21:37:46 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ec74a9c145 
					 
					
						
						
							
							bc: make long-running dc drop data it does not need (when it can)  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_vm_process                                       765     824     +59
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 19:23:46 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						5cf0b2d466 
					 
					
						
						
							
							bc: unbreak "z function" macro machinery  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 18:24:19 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						badf683b0a 
					 
					
						
						
							
							dc: unbreak interactive mode - was trying to get next tokens instead of executing  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_read                                       -     268    +268
zdc_program_printStream                                -     146    +146
zbc_program_exec                                    4046    4182    +136
zdc_program_execStr                                  472     512     +40
zdc_parse_exprs_until_eof                              -      26     +26
zbc_vm_process                                       740     765     +25
zbc_lex_next                                        2225    2240     +15
zdc_parse_expr                                       569     535     -34
zbc_program_pushArray                                147       -    -147
zdc_program_asciify                                  370       -    -370
------------------------------------------------------------------------------
(add/remove: 3/2 grow/shrink: 4/1 up/down: 656/-551)          Total: 105 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 18:10:50 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						5daa1a0adf 
					 
					
						
						
							
							bc: move zbc_lex_next() out of zdc_parse_string() and zdc_parse_mem()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zdc_parse_mem                                         99      93      -6
zdc_parse_expr                                       586     569     -17
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-23)             Total: -23 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 16:41:23 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						7c1c9dc86b 
					 
					
						
						
							
							bc: shorten sanity-check code  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_vm_process                                       745     740      -5
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 14:18:47 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						88fcd5cc6c 
					 
					
						
						
							
							bc: fold single-callsite functions into callers, commonalize code  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_vm_process                                       699     745     +46
zbc_parse_stmt_possibly_auto                        1689    1682      -7
bc_parse_reset                                       113       -    -113
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/1 up/down: 46/-120)           Total: -74 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 06:00:25 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						514967df5e 
					 
					
						
						
							
							bc: zcommon_parse_expr() has only one user, fold it in  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
zbc_program_exec                                    4021    4046     +25
zdc_parse_expr                                       589     586      -3
zcommon_parse_expr                                    28       -     -28
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/1 up/down: 25/-31)             Total: -6 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2018-12-22 03:38:52 +01:00