@@ -239,6 +239,104 @@ jobs:
239239 run : ctest -E "test-unit-sve_128|test-unit-sve_256" --rerun-failed --output-on-failure
240240 working-directory : build_rel
241241
242+ build-ubuntu-arm64-gcc-asan :
243+ name : Ubuntu arm64 GCC (ASAN)
244+ runs-on : ubuntu-24.04-arm
245+ steps :
246+ - name : Git checkout
247+ uses : actions/checkout@v6
248+ with :
249+ submodules : ' true'
250+
251+ - name : Update apt packages
252+ run : sudo apt-get update
253+
254+ - name : Install ImageMagick
255+ run : sudo apt-get install imagemagick
256+
257+ - name : Install GCC 14
258+ run : sudo apt-get install -y gcc-14
259+
260+ - name : Build release
261+ run : |
262+ export CXX=g++-14
263+ mkdir build_rel
264+ cd build_rel
265+ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_NEON=ON -DASTCENC_ISA_SVE_128=ON -DASTCENC_ISA_NONE=ON -DASTCENC_ASAN=ON ..
266+ make install -j4
267+
268+ - name : Setup Python
269+ uses : actions/setup-python@v6
270+ with :
271+ python-version : ' 3.12'
272+
273+ - name : Get Python modules
274+ run : |
275+ python -m pip install --upgrade pip
276+ pip install numpy Pillow
277+
278+ - name : Run system tests
279+ # Disable SVE for now
280+ run : |
281+ python ./Test/astc_test_functional.py --encoder none
282+ python ./Test/astc_test_functional.py --encoder neon
283+ python ./Test/astc_test_image.py --encoder none --test-set Small
284+ python ./Test/astc_test_image.py --encoder neon --test-set Small
285+
286+ - name : Run unit tests
287+ # Disable SVE for now
288+ run : ctest -E "test-unit-sve_128|test-unit-sve_256" --rerun-failed --output-on-failure
289+ working-directory : build_rel
290+
291+ build-ubuntu-arm64-gcc-ubsan :
292+ name : Ubuntu arm64 GCC (UBSAN)
293+ runs-on : ubuntu-24.04-arm
294+ steps :
295+ - name : Git checkout
296+ uses : actions/checkout@v6
297+ with :
298+ submodules : ' true'
299+
300+ - name : Update apt packages
301+ run : sudo apt-get update
302+
303+ - name : Install ImageMagick
304+ run : sudo apt-get install imagemagick
305+
306+ - name : Install GCC 14
307+ run : sudo apt-get install -y gcc-14
308+
309+ - name : Build release
310+ run : |
311+ export CXX=g++-14
312+ mkdir build_rel
313+ cd build_rel
314+ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_NEON=ON -DASTCENC_ISA_SVE_128=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UBSAN=ON ..
315+ make install -j4
316+
317+ - name : Setup Python
318+ uses : actions/setup-python@v6
319+ with :
320+ python-version : ' 3.12'
321+
322+ - name : Get Python modules
323+ run : |
324+ python -m pip install --upgrade pip
325+ pip install numpy Pillow
326+
327+ - name : Run system tests
328+ # Disable SVE for now
329+ run : |
330+ python ./Test/astc_test_functional.py --encoder none
331+ python ./Test/astc_test_functional.py --encoder neon
332+ python ./Test/astc_test_image.py --encoder none --test-set Small
333+ python ./Test/astc_test_image.py --encoder neon --test-set Small
334+
335+ - name : Run unit tests
336+ # Disable SVE for now
337+ run : ctest -E "test-unit-sve_128|test-unit-sve_256" --rerun-failed --output-on-failure
338+ working-directory : build_rel
339+
242340 build-ubuntu-x64-clang :
243341 name : Ubuntu x64 Clang
244342 runs-on : ubuntu-24.04
@@ -310,6 +408,98 @@ jobs:
310408 run : ctest --rerun-failed --output-on-failure
311409 working-directory : build_rel
312410
411+ build-ubuntu-x64-clang-asan :
412+ name : Ubuntu x64 Clang (ASAN)
413+ runs-on : ubuntu-24.04
414+ steps :
415+ - name : Git checkout
416+ uses : actions/checkout@v6
417+ with :
418+ submodules : ' true'
419+
420+ - name : Update apt packages
421+ run : sudo apt-get update
422+
423+ - name : Install ImageMagick
424+ run : sudo apt-get install imagemagick
425+
426+ - name : Build release
427+ run : |
428+ export CXX=clang++
429+ mkdir build_rel
430+ cd build_rel
431+ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_ASAN=ON -DASTCENC_PACKAGE=x64 ..
432+ make install package -j4
433+
434+ - name : Setup Python
435+ uses : actions/setup-python@v6
436+ with :
437+ python-version : ' 3.12'
438+
439+ - name : Get Python modules
440+ run : |
441+ python -m pip install --upgrade pip
442+ pip install numpy Pillow
443+
444+ - name : Run system tests
445+ run : |
446+ python ./Test/astc_test_functional.py --encoder none
447+ python ./Test/astc_test_functional.py --encoder sse2
448+ python ./Test/astc_test_functional.py --encoder sse4.1
449+ python ./Test/astc_test_functional.py --encoder avx2
450+ python ./Test/astc_test_image.py --encoder none --test-set Small
451+ python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
452+
453+ - name : Run unit tests
454+ run : ctest --rerun-failed --output-on-failure
455+ working-directory : build_rel
456+
457+ build-ubuntu-x64-clang-ubsan :
458+ name : Ubuntu x64 Clang (UBSAN)
459+ runs-on : ubuntu-24.04
460+ steps :
461+ - name : Git checkout
462+ uses : actions/checkout@v6
463+ with :
464+ submodules : ' true'
465+
466+ - name : Update apt packages
467+ run : sudo apt-get update
468+
469+ - name : Install ImageMagick
470+ run : sudo apt-get install imagemagick
471+
472+ - name : Build release
473+ run : |
474+ export CXX=clang++
475+ mkdir build_rel
476+ cd build_rel
477+ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_UBSAN=ON -DASTCENC_PACKAGE=x64 ..
478+ make install package -j4
479+
480+ - name : Setup Python
481+ uses : actions/setup-python@v6
482+ with :
483+ python-version : ' 3.12'
484+
485+ - name : Get Python modules
486+ run : |
487+ python -m pip install --upgrade pip
488+ pip install numpy Pillow
489+
490+ - name : Run system tests
491+ run : |
492+ python ./Test/astc_test_functional.py --encoder none
493+ python ./Test/astc_test_functional.py --encoder sse2
494+ python ./Test/astc_test_functional.py --encoder sse4.1
495+ python ./Test/astc_test_functional.py --encoder avx2
496+ python ./Test/astc_test_image.py --encoder none --test-set Small
497+ python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
498+
499+ - name : Run unit tests
500+ run : ctest --rerun-failed --output-on-failure
501+ working-directory : build_rel
502+
313503 build-ubuntu-x64-gcc :
314504 name : Ubuntu x64 GCC
315505 runs-on : ubuntu-24.04
@@ -373,6 +563,98 @@ jobs:
373563 run : ctest --rerun-failed --output-on-failure
374564 working-directory : build_rel
375565
566+ build-ubuntu-x64-gcc-asan :
567+ name : Ubuntu x64 GCC (ASAN)
568+ runs-on : ubuntu-24.04
569+ steps :
570+ - name : Git checkout
571+ uses : actions/checkout@v6
572+ with :
573+ submodules : ' true'
574+
575+ - name : Update apt packages
576+ run : sudo apt-get update
577+
578+ - name : Install ImageMagick
579+ run : sudo apt-get install imagemagick
580+
581+ - name : Build release
582+ run : |
583+ export CXX=g++
584+ mkdir build_rel
585+ cd build_rel
586+ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_ASAN=ON -DASTCENC_PACKAGE=x64 ..
587+ make install package -j4
588+
589+ - name : Setup Python
590+ uses : actions/setup-python@v6
591+ with :
592+ python-version : ' 3.12'
593+
594+ - name : Get Python modules
595+ run : |
596+ python -m pip install --upgrade pip
597+ pip install numpy Pillow
598+
599+ - name : Run system tests
600+ run : |
601+ python ./Test/astc_test_functional.py --encoder none
602+ python ./Test/astc_test_functional.py --encoder sse2
603+ python ./Test/astc_test_functional.py --encoder sse4.1
604+ python ./Test/astc_test_functional.py --encoder avx2
605+ python ./Test/astc_test_image.py --encoder none --test-set Small
606+ python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
607+
608+ - name : Run unit tests
609+ run : ctest --rerun-failed --output-on-failure
610+ working-directory : build_rel
611+
612+ build-ubuntu-x64-gcc-ubsan :
613+ name : Ubuntu x64 GCC (UBSAN)
614+ runs-on : ubuntu-24.04
615+ steps :
616+ - name : Git checkout
617+ uses : actions/checkout@v6
618+ with :
619+ submodules : ' true'
620+
621+ - name : Update apt packages
622+ run : sudo apt-get update
623+
624+ - name : Install ImageMagick
625+ run : sudo apt-get install imagemagick
626+
627+ - name : Build release
628+ run : |
629+ export CXX=g++
630+ mkdir build_rel
631+ cd build_rel
632+ cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=../ -DASTCENC_UNITTEST=ON -DASTCENC_ISA_AVX2=ON -DASTCENC_ISA_SSE41=ON -DASTCENC_ISA_SSE2=ON -DASTCENC_ISA_NONE=ON -DASTCENC_UNITTEST=ON -DASTCENC_UBSAN=ON -DASTCENC_PACKAGE=x64 ..
633+ make install package -j4
634+
635+ - name : Setup Python
636+ uses : actions/setup-python@v6
637+ with :
638+ python-version : ' 3.12'
639+
640+ - name : Get Python modules
641+ run : |
642+ python -m pip install --upgrade pip
643+ pip install numpy Pillow
644+
645+ - name : Run system tests
646+ run : |
647+ python ./Test/astc_test_functional.py --encoder none
648+ python ./Test/astc_test_functional.py --encoder sse2
649+ python ./Test/astc_test_functional.py --encoder sse4.1
650+ python ./Test/astc_test_functional.py --encoder avx2
651+ python ./Test/astc_test_image.py --encoder none --test-set Small
652+ python ./Test/astc_test_image.py --encoder all-x86 --test-set Small
653+
654+ - name : Run unit tests
655+ run : ctest --rerun-failed --output-on-failure
656+ working-directory : build_rel
657+
376658 build-macos-x64-clang :
377659 name : macOS x64 Clang
378660 runs-on : macos-14
0 commit comments