summaryrefslogtreecommitdiff
path: root/test/test.sh
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2021-02-01 21:22:38 +0100
committerDaniel Friesel <derf@finalrewind.org>2021-02-01 21:22:38 +0100
commit8198be8fb6f81e987c3d0a2f334f61914f77c84b (patch)
treeff47ac7e48ba952c8f9ae7e8194ae3c396f619b2 /test/test.sh
parente522e5cdb583d20b712c7d9c842fc6ce9d3fe17d (diff)
Add faster mode with huffman -> code look-up table
2x to 5x speed-up at the cost of ~600B of RAM. Compile with -DDEFLATE_WITH_LUT
Diffstat (limited to 'test/test.sh')
-rwxr-xr-xtest/test.sh20
1 files changed, 16 insertions, 4 deletions
diff --git a/test/test.sh b/test/test.sh
index 44104d5..60e3e26 100755
--- a/test/test.sh
+++ b/test/test.sh
@@ -4,10 +4,7 @@ set -eu
cd "$(dirname "$0")"
-for std in c++11 c++20 c99 c11; do
-
- "./compile-${std}.sh"
-
+run_tests() {
for file in $(find .. -type f -size -32760c); do
if ! ./deflate $file | ./inflate > tmp; then
echo "inflate error at $file"
@@ -15,6 +12,21 @@ for std in c++11 c++20 c99 c11; do
fi
diff $file tmp
done
+}
+
+for std in c++11 c++20 c99 c11; do
+
+ "./compile-${std}.sh"
+ run_tests
+
+ "./compile-${std}.sh" -DDEFLATE_CHECKSUM
+ run_tests
+
+ "./compile-${std}.sh" -DDEFLATE_WITH_LUT
+ run_tests
+
+ "./compile-${std}.sh" -DDEFLATE_CHECKSUM -DDEFLATE_WITH_LUT
+ run_tests
done