Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						f5f336e787 
					 
					
						
						
							
							tc: fix for parsing of "dev IFACE" and printing of "class list"  
						
						 
						
						... 
						
						
						
						First part (parsing fix) is from Steffen Nurpmeso <steffen@sdaoden.eu >
function                                             old     new   delta
.rodata                                           104120  104138     +18
print_qdisc                                          469     464      -5
tc_main                                              980     969     -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/2 up/down: 18/-16)              Total: 2 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-11 14:50:04 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						39aabfe8f0 
					 
					
						
						
							
							awk: unbreak "cmd" | getline  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
evaluate                                            3337    3343      +6
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-11 12:51:43 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						4ef8841b21 
					 
					
						
						
							
							awk: unbreak "printf('%c') can output NUL" testcase  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
awk_printf                                           546     593     +47
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-11 12:25:33 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						3d57a84907 
					 
					
						
						
							
							awk: undo TI_PRINT, it introduced a bug (print with any redirect acting as printf)  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
evaluate                                            3329    3337      +8
Patch by Ron Yorston <rmy@pobox.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-11 12:00:31 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						49c3ce64f0 
					 
					
						
						
							
							awk: rollback_token() + chain_group() == chain_until_rbrace()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
parse_program                                        336     332      -4
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-11 11:46:21 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						e2e3802987 
					 
					
						
						
							
							awk: fix printf buffer overflow  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
awk_printf                                           468     546     +78
fmt_num                                              239     247      +8
getvar_s                                             125     111     -14
evaluate                                            3343    3329     -14
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/2 up/down: 86/-28)             Total: 58 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-04 01:25:34 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						08ca313d7e 
					 
					
						
						
							
							awk: simplify tests for operation class  
						
						 
						
						... 
						
						
						
						Usually, an operation class has only one possible value of "info" word.
In this case, just compare the entire info word, do not bother
to mask OPCLSMASK bits.
(Example where this is not the case: OC_REPLACE for "<op>=")
function                                             old     new   delta
mk_splitter                                          106     100      -6
chain_group                                          616     610      -6
nextarg                                               40      32      -8
exec_builtin                                        1157    1149      -8
as_regex                                             111     103      -8
awk_split                                            553     543     -10
parse_expr                                           948     936     -12
awk_getline                                          656     642     -14
evaluate                                            3387    3343     -44
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/9 up/down: 0/-116)           Total: -116 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 14:11:51 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						cb042b0582 
					 
					
						
						
							
							awk: restore strdup elision optimization in assignment  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
evaluate                                            3339    3387     +48
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 13:30:45 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						90404ed2f6 
					 
					
						
						
							
							awk: match(): code shrink  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
do_match                                               -     165    +165
exec_builtin_match                                   202       -    -202
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/0 up/down: 165/-202)          Total: -37 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 12:20:36 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						0e3ef4efb0 
					 
					
						
						
							
							awk: rand(): 64-bit constants should be ULL  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 11:57:59 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						2211fa70cc 
					 
					
						
						
							
							awk: do not use a copy of g_progname for node->l.new_progname  
						
						 
						
						... 
						
						
						
						We never destroy g_progname's, the strings still exist, no need to copy
function                                             old     new   delta
chain_node                                           104      97      -7
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 11:54:01 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						e1e7ad6b60 
					 
					
						
						
							
							awk: support %F %a %A in printf  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
.rodata                                           104111  104120      +9
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 01:59:36 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						1f765709ed 
					 
					
						
						
							
							awk: open-code TS_OPTERM, no logic changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 01:32:03 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						2b65e73db3 
					 
					
						
						
							
							awk: tighten rules in action parsing  
						
						 
						
						... 
						
						
						
						Disallow:
    BEGIN
	{ action }  - must start on the same line
Disallow:
    func f()
	print "hello" - must be in {...}
function                                             old     new   delta
chain_until_rbrace                                     -      41     +41
parse_program                                        307     336     +29
chain_group                                          649     616     -33
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/1 up/down: 70/-33)             Total: 37 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 01:16:48 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						717200eb43 
					 
					
						
						
							
							awk: rename GRPSTART/END to L/RBRACE, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-03 00:39:55 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						b705bf5539 
					 
					
						
						
							
							awk: move match() code out-of-line  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
exec_builtin_match                                     -     202    +202
exec_builtin                                        1434    1157    -277
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 202/-277)          Total: -75 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 23:48:48 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						646429e05e 
					 
					
						
						
							
							awk: use smaller regmatch_t arrays, they had 2 elements for no apparent reason  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
exec_builtin                                        1479    1434     -45
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 23:26:09 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a5d7b0f4f4 
					 
					
						
						
							
							awk: fix detection of VAR=VAL arguments  
						
						 
						
						... 
						
						
						
						1NAME=VAL is not it, neither is VA.R=VAL
function                                             old     new   delta
next_input_file                                      216     214      -2
is_assignment                                        115      91     -24
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-26)             Total: -26 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 23:07:21 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						4d902ea9de 
					 
					
						
						
							
							awk: fix beavior of "exit" without parameter  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
evaluate                                            3336    3339      +3
awk_exit                                              93      94      +1
awk_main                                             829     827      -2
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 4/-2)                Total: 2 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 22:28:51 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						8bb03da906 
					 
					
						
						
							
							awk: rand() could return 1.0, fix this - should be in [0,1)  
						
						 
						
						... 
						
						
						
						While at it, make it finer-grained (63 bits of randomness)
function                                             old     new   delta
evaluate                                            3303    3336     +33
.rodata                                           104107  104111      +4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 37/0)               Total: 37 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 19:38:03 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						37ae8cdc6e 
					 
					
						
						
							
							awk: beautify builtins table, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 18:55:00 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						47d9133896 
					 
					
						
						
							
							awk: enforce simple builtins' argument number  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
evaluate                                            3215    3303     +88
.rodata                                           104036  104107     +71
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 159/0)             Total: 159 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 18:28:12 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						786ca197ad 
					 
					
						
						
							
							awk: make builtin definitions more understandable, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 17:32:08 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						640212ae0e 
					 
					
						
						
							
							awk: do not special-case "delete"  
						
						 
						
						... 
						
						
						
						Rework of the previous fix:
Can use operation attributes to disable arg evaluation instead of special-casing.
function                                             old     new   delta
.rodata                                           104032  104036      +4
evaluate                                            3223    3215      -8
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 4/-8)               Total: -4 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 15:21:36 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ef5463cf16 
					 
					
						
						
							
							awk: shuffle globals for smaller offsets  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
awk_main                                             832     829      -3
evaluate                                            3229    3223      -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-9)               Total: -9 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 14:53:52 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						966cafcc77 
					 
					
						
						
							
							awk: use "static" tmpvars in main and exit  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
awk_exit                                             103      93     -10
awk_main                                             850     832     -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-28)             Total: -28 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 14:33:13 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						1193c68fa7 
					 
					
						
						
							
							awk: when parsing length(), simplify eating of LPAREN  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
parse_expr                                           945     948      +3
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 14:29:01 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						40573556f2 
					 
					
						
						
							
							awk: shuffle functions to reduce forward declarations, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-02 14:27:40 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						8b4c429025 
					 
					
						
						
							
							awk: use static tmpvars instead of nvalloc(1)ed ones  
						
						 
						
						... 
						
						
						
						ptest() was using this idea already.
As far as I can see, this is safe. Ttestsuite passes.
One downside is that a temporary from e.g. printf invocation
won't be freed until the next printf call.
function                                             old     new   delta
awk_printf                                           481     468     -13
as_regex                                             137     111     -26
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-39)             Total: -39 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-01 17:50:26 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						1573487e21 
					 
					
						
						
							
							awk: rename temp variables, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-07-01 16:17:33 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d7354df169 
					 
					
						
						
							
							awk: evaluate all, even superfluous function args  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
evaluate                                            3128    3135      +7
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-30 12:52:51 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						ca9278ee58 
					 
					
						
						
							
							awk: rewrite "print" logic a bit to make it clearer  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-30 12:42:39 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						d150710169 
					 
					
						
						
							
							awk: allow empty fuinctions with no arguments, disallow function redefinitions  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
.rodata                                           103681  103700     +19
parse_program                                        303     307      +4
evaluate                                            3145    3141      -4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 23/-4)              Total: 19 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-30 12:23:51 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						86fc2872b3 
					 
					
						
						
							
							awk: replace incorrect use of union in undefined function check (no code changes)  
						
						 
						
						... 
						
						
						
						...which reveals that it's buggy: it thinks "func f(){}" is an undefined function!
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-30 12:12:20 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						6cf6f1eaee 
					 
					
						
						
							
							awk: remove custom pool allocator for temporary awk variables  
						
						 
						
						... 
						
						
						
						It seems to be designed to reduce overhead of malloc's auxiliary data,
by allocating at least 64 variables as a block.
With "struct var" being about 20-32 bytes long (32/64 bits),
malloc overhead for one temporary indeed is high, ~33% more memory used
than needed.
function                                             old     new   delta
evaluate                                            3137    3145      +8
modprobe_main                                        798     803      +5
exec_builtin                                        1414    1419      +5
awk_printf                                           476     481      +5
as_regex                                             132     137      +5
EMSG_INTERNAL_ERROR                                   15       -     -15
nvfree                                               169     116     -53
nvalloc                                              145       -    -145
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 5/1 up/down: 28/-213)          Total: -185 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-30 08:01:29 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						f99800758e 
					 
					
						
						
							
							modprobe: when reading modules.builtin, use basenames of files from it  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
modprobe_main                                        798     803      +5
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-30 00:49:24 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						3aff3b9cb8 
					 
					
						
						
							
							awk: assorted optimizations  
						
						 
						
						... 
						
						
						
						hash_find(): do not caclculate hash twice. Do not divide - can use
cheap multiply-by-8 shift.
nextword(): do not repeatedly increment in-memory value, do it in register,
then store final result.
hashwalk_init(): do not strlen() twice.
function                                             old     new   delta
hash_search3                                           -      49     +49
hash_find                                            259     281     +22
nextword                                              19      16      -3
evaluate                                            3141    3137      -4
hash_search                                           54      28     -26
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/3 up/down: 71/-33)             Total: 38 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 19:07:36 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						b3c91a127f 
					 
					
						
						
							
							awk: free unused parsing structures after parse is done  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
hash_clear                                             -      90     +90
awk_main                                             827     849     +22
clear_array                                           90       -     -90
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 1/0 up/down: 112/-90)            Total: 22 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 19:06:59 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						21fbee2e87 
					 
					
						
						
							
							awk: document which hashes are used at what state (parse/execute)  
						
						 
						
						... 
						
						
						
						We can free them after they are no longer needed.
(Currently, being a NOEXEC applet is much larger waste of memory
for the case of long-running awk script).
function                                             old     new   delta
awk_main                                             831     827      -4
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 14:33:04 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						6872c193a9 
					 
					
						
						
							
							awk: fix parsing of expressions such as "v (a)"  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
next_token                                           812     825     +13
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 12:16:36 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						686287b5da 
					 
					
						
						
							
							awk: deindent a block, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 03:47:46 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						216d3d8ad9 
					 
					
						
						
							
							awk: code shrink  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
parse_expr                                           948     945      -3
chain_expr                                            65      62      -3
chain_group                                          655     649      -6
parse_program                                        310     303      -7
rollback_token                                        10       -     -10
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 0/4 up/down: 0/-29)             Total: -29 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 03:44:56 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						4f27503a1e 
					 
					
						
						
							
							awk: get rid of "move name one char back" trick in next_token()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
next_token                                           791     812     +21
awk_main                                             886     831     -55
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 21/-55)            Total: -34 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 03:27:07 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						f414fb4411 
					 
					
						
						
							
							awk: when parsing TC_FUNCTION token, eat its opening '('  
						
						 
						
						... 
						
						
						
						...like we do for array references.
function                                             old     new   delta
parse_expr                                           938     948     +10
next_token                                           788     791      +3
parse_program                                        313     310      -3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 13/-3)              Total: 10 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 03:02:21 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						cb6061a4e9 
					 
					
						
						
							
							awk: g_buf[] does not need a separate allocation  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
exec_builtin                                        1400    1414     +14
evaluate                                            3132    3141      +9
getvar_s                                             121     125      +4
awk_main                                             902     886     -16
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/1 up/down: 27/-16)             Total: 11 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 02:43:02 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						926420795b 
					 
					
						
						
							
							awk: simplify parsing of function declaration  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
parse_program                                        328     313     -15
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 02:37:10 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						9782cb7774 
					 
					
						
						
							
							awk: rename TC_SEQSTART/END to L/RPAREN, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 01:50:47 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						a493441ca5 
					 
					
						
						
							
							awk: deindent code block, no code changes  
						
						 
						
						... 
						
						
						
						Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 01:30:49 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						adcd9a6f34 
					 
					
						
						
							
							awk: use TS_foo for combined token classes. No code changes  
						
						 
						
						... 
						
						
						
						Confusion with "simple" classes was the cause of a bug fixed by previous commit
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 01:23:37 +02:00  
					
					
						 
						
						
							
							
							
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Denys Vlasenko 
							
						 
					 
					
						
						
							
						
						832cb4fcb9 
					 
					
						
						
							
							awk: make ltclass ("last token class") local to next_token()  
						
						 
						
						... 
						
						
						
						function                                             old     new   delta
next_token                                           784     790      +6
next_input_file                                      219     216      -3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 6/-3)                Total: 3 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com > 
						
						
					 
					
						2021-06-29 01:09:08 +02:00