diff options
author | Henrik Gramner <gramner@twoorioles.com> | 2020-12-16 17:32:52 +0300 |
---|---|---|
committer | Henrik Gramner <henrik@gramner.com> | 2020-12-16 17:50:43 +0300 |
commit | 7424f8e896b229ee07e828b3ad995e846e49a024 (patch) | |
tree | 7e4ee1cf3d97200f758d8b1ba109df10a84c3384 | |
parent | 38df0efa6d256ec527bb5ad47043b0ceb4c3a2e8 (diff) |
CI: Run multithreaded tests using thread sanitizer (tsan)
-rw-r--r-- | .gitlab-ci.yml | 37 |
1 files changed, 22 insertions, 15 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ba9f763..43df07f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -420,21 +420,6 @@ test-debian32-asm: needs: ["build-debian32"] dependencies: ["build-debian32"] -test-debian-mt: - extends: - - .debian-amd64-common - - .test-common - needs: ["build-debian"] - dependencies: ["build-debian"] - script: - - meson configure build -Dtestdata_tests=true - - cd build - - exit_code=0 - - time meson test -q --suite testdata-8 --suite testdata-10 --suite testdata-12 --test-args "--tilethreads 1 --framethreads 2" || exit_code=$((exit_code + $?)) - - time meson test -q --suite testdata-8 --suite testdata-10 --suite testdata-12 --test-args "--tilethreads 2 --framethreads 1" || exit_code=$((exit_code + $?)) - - time meson test -q --suite testdata-8 --suite testdata-10 --suite testdata-12 --test-args "--tilethreads 2 --framethreads 2" || exit_code=$((exit_code + $?)) - - if [ $exit_code -ne 0 ]; then exit $exit_code; fi - test-debian-unaligned-stack: extends: - .debian-amd64-common @@ -507,6 +492,28 @@ test-debian-ubsan: - ninja -C build - cd build && time meson test -v --setup=sanitizer +test-debian-tsan: + extends: + - .debian-amd64-common + - .test-common + needs: ["build-debian"] + variables: + TSAN_OPTIONS: 'halt_on_error=1' + CC: clang + script: + - meson build --buildtype debugoptimized + -Dtestdata_tests=true + -Dlogging=false + -Db_sanitize=thread + -Db_lundef=false + - ninja -C build + - cd build + - exit_code=0 + - time meson test -v --setup=sanitizer --suite testdata-8 --suite testdata-10 --suite testdata-12 --test-args "--tilethreads 1 --framethreads 2" || exit_code=$((exit_code + $?)) + - time meson test -v --setup=sanitizer --suite testdata-8 --suite testdata-10 --suite testdata-12 --test-args "--tilethreads 2 --framethreads 1" || exit_code=$((exit_code + $?)) + - time meson test -v --setup=sanitizer --suite testdata-8 --suite testdata-10 --suite testdata-12 --test-args "--tilethreads 2 --framethreads 2" || exit_code=$((exit_code + $?)) + - if [ $exit_code -ne 0 ]; then exit $exit_code; fi + test-win64: extends: - .debian-amd64-common |