mirror of
https://github.com/sockspls/badfish
synced 2025-05-01 17:19:36 +00:00

might fix the tsan errors closes https://github.com/official-stockfish/Stockfish/pull/4745 No functional change
66 lines
1.8 KiB
YAML
66 lines
1.8 KiB
YAML
name: Stockfish
|
|
on:
|
|
workflow_call:
|
|
jobs:
|
|
Stockfish:
|
|
name: ${{ matrix.sanitizers.name }}
|
|
runs-on: ${{ matrix.config.os }}
|
|
env:
|
|
COMPILER: ${{ matrix.config.compiler }}
|
|
COMP: ${{ matrix.config.comp }}
|
|
CXXFLAGS: "-Werror"
|
|
strategy:
|
|
matrix:
|
|
config:
|
|
- name: Ubuntu 22.04 GCC
|
|
os: ubuntu-22.04
|
|
compiler: g++
|
|
comp: gcc
|
|
shell: bash
|
|
sanitizers:
|
|
- name: Run with thread sanitizer
|
|
make_option: sanitize=thread
|
|
instrumented_option: sanitizer-thread
|
|
- name: Run with UB sanitizer
|
|
make_option: sanitize=undefined
|
|
instrumented_option: sanitizer-undefined
|
|
- name: Run under valgrind
|
|
make_option: ""
|
|
instrumented_option: valgrind
|
|
- name: Run under valgrind-thread
|
|
make_option: ""
|
|
instrumented_option: valgrind-thread
|
|
defaults:
|
|
run:
|
|
working-directory: src
|
|
shell: ${{ matrix.config.shell }}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Download required linux packages
|
|
run: |
|
|
sudo apt update
|
|
sudo apt install expect valgrind g++-multilib
|
|
|
|
- name: Download the used network from the fishtest framework
|
|
run: make net
|
|
|
|
- name: Check compiler
|
|
run: $COMPILER -v
|
|
|
|
- name: Test help target
|
|
run: make help
|
|
|
|
- name: Check git
|
|
run: git --version
|
|
|
|
# Sanitizers
|
|
|
|
- name: ${{ matrix.sanitizers.name }}
|
|
run: |
|
|
export CXXFLAGS="-O1 -fno-inline"
|
|
make clean
|
|
make -j2 ARCH=x86-64-sse41-popcnt ${{ matrix.sanitizers.make_option }} debug=yes optimize=no build > /dev/null
|
|
../tests/instrumented.sh --${{ matrix.sanitizers.instrumented_option }}
|