mirror of
https://github.com/sockspls/badfish
synced 2025-07-12 20:19:15 +00:00

The same functionality is available by using COMPCXX and having another variable which does the same is just confusing. There was only one mention on Stockfish Wiki about this which has been changed to COMPCXX. closes https://github.com/official-stockfish/Stockfish/pull/5154 No functional change
65 lines
1.8 KiB
YAML
65 lines
1.8 KiB
YAML
name: Sanitizers
|
|
on:
|
|
workflow_call:
|
|
jobs:
|
|
Test-under-sanitizers:
|
|
name: ${{ matrix.sanitizers.name }}
|
|
runs-on: ${{ matrix.config.os }}
|
|
env:
|
|
COMPCXX: ${{ matrix.config.compiler }}
|
|
COMP: ${{ matrix.config.comp }}
|
|
CXXFLAGS: "-Werror"
|
|
strategy:
|
|
fail-fast: false
|
|
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@v4
|
|
|
|
- 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: $COMPCXX -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 -j4 ARCH=x86-64-sse41-popcnt ${{ matrix.sanitizers.make_option }} debug=yes optimize=no build > /dev/null
|
|
../tests/instrumented.sh --${{ matrix.sanitizers.instrumented_option }}
|