LZMA Compression; Refactor File I/O
(На этот раз в master и с удалённым CRC и без конфликтов)
Передвигает всю логику обработки входных файлов в отдельные исходники (catfile.c
, catfile.h
).
Файлы, генерируемые в результате CAT_FinalizeSimulator и CAT_FinalizePreprocessor теперь используют LZMA сжатие.
Пока нет нормального способа передавать опции для препроцессора и симулятора, метод сжатия прибит гвоздями (создан новый enum COMPRESSIONTYPE
; прибит LZMA
); но если в заголовке указан UNCOMPRESSED, то тоже работает.
На примере diff_bool_asynch (поле 300х300), без сжатия выходные файлы по 89кб, с сжатием: ~1.4кб.