des.c: constify des tables
commit31d425e5f4b3ba49c3bd761251d87d7589983f5e
authorMax Filippov <jcmvbkbc@gmail.com>
Sun, 30 Jul 2023 19:02:00 +0000 (30 12:02 -0700)
committerWaldemar Brodkorb <wbx@openadk.org>
Sun, 30 Jul 2023 19:08:27 +0000 (30 21:08 +0200)
treeb226efa11d2985184f672cb147e44464ea7d294b
parent2c46c4ed23d333dcc0cea9fab47abf0167f8cf5a
des.c: constify des tables

DES tables take up a huge amount of space in the .bss and they aren't
even variable. Generate constant tables and put them into des_tables.c
and drop constants and code used to generate them from des.c
This saves ~70KBytes of the .bss and ~3KBytes of the total library size:

    text           data     bss     dec     hex filename
- 618508          25652   89400  733560   b3178 lib/libuClibc-1.0.42.so
+ 685664          25672   19488  730824   b26c8 lib/libuClibc-1.0.42.so

Modified libc passes the DES validation suite from the uclibc-ng-test.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
libcrypt/des.c
libcrypt/des_tables.c [new file with mode: 0644]