4040 strategy :
4141 matrix :
4242 os : [ubuntu-latest, macos-latest]
43+ sanitizer : [undefined, address]
4344 fail-fast : false
4445 steps :
4546 - name : Checkout Yosys
5758 mkdir build
5859 cd build
5960 make -f ../Makefile config-$CC
60- echo 'SANITIZER = undefined ' >> Makefile.conf
61+ echo 'SANITIZER = ${{ matrix.sanitizer }} ' >> Makefile.conf
6162 make -f ../Makefile -j$procs ENABLE_LTO=1
6263
6364 - name : Log yosys-config output
7374 - name : Store build artifact
7475 uses : actions/upload-artifact@v4
7576 with :
76- name : build-${{ matrix.os }}
77+ name : build-${{ matrix.os }}-${{ matrix.sanitizer }}
7778 path : build.tar
7879 retention-days : 1
7980
@@ -84,10 +85,12 @@ jobs:
8485 if : needs.pre_job.outputs.should_skip != 'true'
8586 env :
8687 CC : clang
88+ ASAN_OPTIONS : halt_on_error=1
8789 UBSAN_OPTIONS : halt_on_error=1
8890 strategy :
8991 matrix :
9092 os : [ubuntu-latest, macos-latest]
93+ sanitizer : [undefined, address]
9194 fail-fast : false
9295 steps :
9396 - name : Checkout Yosys
@@ -136,7 +139,7 @@ jobs:
136139 - name : Download build artifact
137140 uses : actions/download-artifact@v4
138141 with :
139- name : build-${{ matrix.os }}
142+ name : build-${{ matrix.os }}-${{ matrix.sanitizer }}
140143
141144 - name : Uncompress build
142145 shell : bash
@@ -168,6 +171,7 @@ jobs:
168171 strategy :
169172 matrix :
170173 os : [ubuntu-latest]
174+ sanitizer : [undefined, address]
171175 fail-fast : false
172176 steps :
173177 - name : Checkout Yosys
@@ -181,7 +185,7 @@ jobs:
181185 - name : Download build artifact
182186 uses : actions/download-artifact@v4
183187 with :
184- name : build-${{ matrix.os }}
188+ name : build-${{ matrix.os }}-${{ matrix.sanitizer }}
185189
186190 - name : Uncompress build
187191 shell : bash
0 commit comments