Skip to content

LZMA Compression

Передвигает всю логику обработки данных из файлов в память и обратно в отдельный файл (catfile.c, catfile.h).

Файлы, генерируемые в результате CAT_FinalizeSimulator и CAT_FinalizePreprocessor теперь используют LZMA сжатие.
Пока нет нормального способа передавать опции для препроцессора и симулятора, метод сжатия прибит гвоздями (новый enum COMPRESSIONTYPE, прибит LZMA); но если в заголовке указан UNCOMPRESSED, то тоже работает.

На примере diff_bool_asynch (поле 300х300), без сжатия выходные файлы по 89кб, с сжатием: ~1.4кб.

(хотел удалить обработку CRC потому что нет смысла поддерживать т.к. всё равно никто либу не использовал пока что, но, наверное, в другом коммите как нить без PR сделаю)

Merge request reports