*: code shrink via NOINLINE
function old new delta expand_vars_to_list - 2118 +2118 lzo1x_optimize - 1429 +1429 run_pipe 358 1775 +1417 arith_apply - 1335 +1335 mainQSort3 - 1198 +1198 logdir_open - 1163 +1163 rewrite - 1039 +1039 dump_identity - 987 +987 do_shm - 884 +884 cpio_o - 863 +863 cpio_main 1450 560 -890 ipcs_main 3442 2523 -919 bb_dump_dump 2611 1488 -1123 process_dev 4572 3405 -1167 logdirs_reopen 1308 86 -1222 arith 2084 707 -1377 mainSort 2622 1202 -1420 do_lzo_compress 2276 799 -1477 run_list 2491 943 -1548 expand_variables 2280 135 -2145 ------------------------------------------------------------------------------ (add/remove: 9/0 grow/shrink: 1/10 up/down: 12433/-13288) Total: -855 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
@@ -214,3 +214,34 @@ Result (non-static busybox built against glibc):
|
||||
text data bss dec hex filename
|
||||
634416 2736 23856 661008 a1610 busybox
|
||||
632580 2672 22944 658196 a0b14 busybox_noalign
|
||||
|
||||
|
||||
|
||||
Keeping code small
|
||||
|
||||
Set CONFIG_EXTRA_CFLAGS="-fno-inline-functions-called-once",
|
||||
produce "make bloatcheck", see the biggest auto-inlined functions.
|
||||
Now, set CONFIG_EXTRA_CFLAGS back to "", but add NOINLINE
|
||||
to some of these functions. In 1.16.x timeframe, the results were
|
||||
(annotated "make bloatcheck" output):
|
||||
|
||||
function old new delta
|
||||
expand_vars_to_list - 1712 +1712 win
|
||||
lzo1x_optimize - 1429 +1429 win
|
||||
arith_apply - 1326 +1326 win
|
||||
read_interfaces - 1163 +1163 loss, leave w/o NOINLINE
|
||||
logdir_open - 1148 +1148 win
|
||||
check_deps - 1148 +1148 loss
|
||||
rewrite - 1039 +1039 win
|
||||
run_pipe 358 1396 +1038 win
|
||||
write_status_file - 1029 +1029 almost the same, leave w/o NOINLINE
|
||||
dump_identity - 987 +987 win
|
||||
mainQSort3 - 921 +921 win
|
||||
parse_one_line - 916 +916 loss
|
||||
summarize - 897 +897 almost the same
|
||||
do_shm - 884 +884 win
|
||||
cpio_o - 863 +863 win
|
||||
subCommand - 841 +841 loss
|
||||
receive - 834 +834 loss
|
||||
|
||||
855 bytes saved in total.
|
||||
|
||||
Reference in New Issue
Block a user