|
11 | 11 | strategy: |
12 | 12 | fail-fast: false |
13 | 13 | matrix: |
14 | | - runs-on: [ubuntu-22.04, ubuntu-latest, macos-15-intel, macos-14, windows-latest] |
| 14 | + runs-on: [ubuntu-latest, macos-14, windows-latest] |
15 | 15 | build-type: [Release] |
16 | 16 | runs-on: ${{matrix.runs-on}} |
17 | 17 | steps: |
@@ -90,279 +90,49 @@ jobs: |
90 | 90 | run: | |
91 | 91 | git version |
92 | 92 | git sparse-checkout init --cone |
93 | | - git sparse-checkout set cmake third-party llvm clang |
| 93 | + git sparse-checkout set cmake third-party llvm |
94 | 94 |
|
95 | 95 | - name: Configure LLVM |
96 | 96 | run: cmake -Ssrc/llvm -Bbuild -GNinja -DCMAKE_BUILD_TYPE:STRING=${{matrix.build-type}} ${{env.CMAKE_CONFIG}} -DBUILD_SHARED_LIBS:BOOL=OFF -DCMAKE_INSTALL_PREFIX:PATH="${{github.workspace}}/llvm" -DCMAKE_C_COMPILER:FILEPATH="${{env.CC}}" -DCMAKE_C_FLAGS:STRING="${{env.CFLAGS}}" -DCMAKE_CXX_COMPILER:FILEPATH="${{env.CXX}}" -DCMAKE_CXX_FLAGS:STRING="${{env.CXXFLAGS}}" -DLLVM_PARALLEL_LINK_JOBS:STRING=1 -DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD:STRING="Z80" -DLLVM_TARGET_ARCH="ez80" -DLLVM_LINK_LLVM_DYLIB:BOOL=${{env.DYLIB}} -DLLVM_INCLUDE_EXAMPLES:BOOL=OFF -DLLVM_INCLUDE_TESTS:BOOL=OFF -DLLVM_TOOL_DSYMUTIL_BUILD:BOOL=OFF -DLLVM_TOOL_GOLD_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_AS_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_CFI_VERIFY_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_CVTRES_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_DWP_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_EXEGESIS_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_GSYMUTIL_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_IFS_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_ISEL_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_ITANIUM_DEMANGLE_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_JITLINK_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_JITLISTENER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_LIPO_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_LTO2_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_LTO_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_MCA_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_MC_ASSEMBLE_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_MC_DISASSEMBLE_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_MICROSOFT_DEMANGLE_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_MT_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_OPT_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_PDBUTIL_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_PROFDATA_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_RC_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_SPECIAL_CASE_LIST_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_UNDNAME_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_XRAY_BUILD:BOOL=OFF -DLLVM_TOOL_LLVM_YAML_NUMERIC_PARSER_FUZZER_BUILD:BOOL=OFF -DLLVM_TOOL_SANCOV_BUILD:BOOL=OFF -DLLVM_TOOL_SANSTATS_BUILD:BOOL=OFF -DLLVM_TOOL_VFABI_DEMANGLE_FUZZER_BUILD:BOOL=OFF -DLLVM_ENABLE_ZSTD:BOOL=OFF |
97 | 97 | - name: Build LLVM |
98 | 98 | run: cmake --build build --config ${{matrix.build-type}} --parallel |
99 | | - |
100 | | - - name: Install LLVM |
101 | | - run: | |
102 | | - cmake --build build --config ${{matrix.build-type}} --target install |
103 | | - cmake -E copy build/include/llvm/Config/config.h llvm/include/llvm/Config |
104 | | - - name: Upload LLVM |
105 | | - uses: actions/upload-artifact@v4 |
106 | | - with: |
107 | | - name: LLVM${{matrix.runs-on}}${{matrix.build-type}} |
108 | | - path: llvm |
109 | | - |
110 | | - - name: Install ez80-link |
111 | | - run: cmake -E copy llvm/bin/llvm-link${{env.EXE}} ez80-link${{env.EXE}} |
112 | | - - name: Strip ez80-link |
113 | | - if: runner.os != 'Windows' |
114 | | - run: strip ez80-link${{env.EXE}} |
115 | | - - name: Upload ez80-link |
116 | | - uses: actions/upload-artifact@v4 |
117 | | - with: |
118 | | - name: ez80-link${{env.EXE}}-${{matrix.runs-on}}${{matrix.build-type}} |
119 | | - path: ez80-link${{env.EXE}} |
120 | | - |
121 | | - - name: Install ez80-lto |
122 | | - run: cmake -E copy llvm/bin/llvm-lto${{env.EXE}} ez80-lto${{env.EXE}} |
123 | | - - name: Strip ez80-lto |
| 99 | + - name: Regenerate Z80 .ll checks (Linux/macOS) |
124 | 100 | if: runner.os != 'Windows' |
125 | | - run: strip ez80-lto${{env.EXE}} |
126 | | - - name: Upload ez80-lto |
127 | | - uses: actions/upload-artifact@v4 |
128 | | - with: |
129 | | - name: ez80-lto${{env.EXE}}-${{matrix.runs-on}}${{matrix.build-type}} |
130 | | - path: ez80-lto${{env.EXE}} |
| 101 | + run: python3 src/llvm/utils/update_llc_test_checks.py --llc-binary build/bin/llc src/llvm/test/CodeGen/Z80/*.ll |
131 | 102 |
|
132 | | - - name: Install ez80-lto2 |
133 | | - run: cmake -E copy llvm/bin/llvm-lto2${{env.EXE}} ez80-lto2${{env.EXE}} |
134 | | - - name: Strip ez80-lto2 |
135 | | - if: runner.os != 'Windows' |
136 | | - run: strip ez80-lto2${{env.EXE}} |
137 | | - - name: Upload ez80-lto2 |
138 | | - uses: actions/upload-artifact@v4 |
139 | | - with: |
140 | | - name: ez80-lto2${{env.EXE}}-${{matrix.runs-on}}${{matrix.build-type}} |
141 | | - path: ez80-lto2${{env.EXE}} |
142 | | - |
143 | | - - name: Configure Test |
144 | | - if: runner.os != 'Windows' |
145 | | - run: cmake build -DLLVM_LINK_LLVM_DYLIB:BOOL=${{env.DYLIB}} -DLLVM_ENABLE_PROJECTS:STRING=clang -DLLVM_INCLUDE_EXAMPLES:BOOL=OFF -DLLVM_INCLUDE_TESTS:BOOL=ON -DLLVM_TOOL_DSYMUTIL_BUILD:BOOL=ON -DLLVM_TOOL_GOLD_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_AS_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_CFI_VERIFY_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_CVTRES_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_DWP_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_EXEGESIS_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_GSYMUTIL_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_IFS_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_ISEL_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_ITANIUM_DEMANGLE_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_JITLINK_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_JITLISTENER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_LIPO_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_LTO2_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_LTO_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_MCA_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_MC_ASSEMBLE_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_MC_DISASSEMBLE_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_MICROSOFT_DEMANGLE_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_MT_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_OPT_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_PDBUTIL_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_PROFDATA_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_RC_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_SPECIAL_CASE_LIST_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_UNDNAME_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_XRAY_BUILD:BOOL=ON -DLLVM_TOOL_LLVM_YAML_NUMERIC_PARSER_FUZZER_BUILD:BOOL=ON -DLLVM_TOOL_SANCOV_BUILD:BOOL=ON -DLLVM_TOOL_SANSTATS_BUILD:BOOL=ON -DLLVM_TOOL_VFABI_DEMANGLE_FUZZER_BUILD:BOOL=ON -DLLVM_ENABLE_ZSTD:BOOL=OFF |
146 | | - - name: Build Test |
147 | | - if: runner.os != 'Windows' |
148 | | - run: cmake --build build --config ${{matrix.build-type}} --target Z80Tests --parallel |
149 | | - - name: Install Test |
| 103 | + - name: Show regenerated Z80 diffs (Linux/macOS) |
150 | 104 | if: runner.os != 'Windows' |
151 | 105 | run: | |
152 | | - cmake -E make_directory test/bin test/test/Unit test/tools/clang/bin test/tools/clang/test/Unit test/unittests/Target/Z80 |
153 | | - cmake -E copy build/bin/not${{env.EXE}} build/bin/FileCheck${{env.EXE}} build/bin/llvm-PerfectShuffle${{env.EXE}} build/bin/lli-child-target${{env.EXE}} build/bin/llvm-lit${{env.PY}} build/bin/llvm-locstats build/bin/count${{env.EXE}} build/bin/yaml-bench${{env.EXE}} test/bin |
154 | | - cmake -E copy build/test/lit.site.cfg.py test/test |
155 | | - cmake -E copy build/test/Unit/lit.site.cfg.py test/test/Unit |
156 | | - cmake -E copy build/tools/clang/bin/gen_ast_dump_json_test.py test/tools/clang/bin |
157 | | - cmake -E copy build/tools/clang/test/lit.site.cfg.py test/tools/clang/test |
158 | | - cmake -E copy build/tools/clang/test/Unit/lit.site.cfg.py test/tools/clang/test/Unit |
159 | | - cmake -E copy build/unittests/Target/Z80/Z80Tests${{env.EXE}} test/unittests/Target/Z80 |
160 | | - - name: Upload Test |
161 | | - if: runner.os != 'Windows' |
162 | | - uses: actions/upload-artifact@v4 |
163 | | - with: |
164 | | - name: Test${{matrix.runs-on}}${{matrix.build-type}} |
165 | | - path: test |
| 106 | + if git -C src diff --quiet -- llvm/test/CodeGen/Z80; then |
| 107 | + echo "No regenerated Z80 test changes." |
| 108 | + else |
| 109 | + git -C src status --short -- llvm/test/CodeGen/Z80 |
| 110 | + git -C src diff -- llvm/test/CodeGen/Z80 |
| 111 | + exit 1 |
| 112 | + fi |
166 | 113 |
|
167 | | - - name: Disk Usage (Linux/macOS) |
168 | | - if: runner.os != 'Windows' |
169 | | - run: df -h |
170 | | - - name: Disk Usage (Windows) |
| 114 | + - name: Regenerate Z80 .ll checks (Windows) |
171 | 115 | if: runner.os == 'Windows' |
172 | | - run: Get-CimInstance Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size |
| 116 | + shell: bash |
| 117 | + run: python src/llvm/utils/update_llc_test_checks.py --llc-binary 'build\\bin\\llc.exe' src/llvm/test/CodeGen/Z80/*.ll |
173 | 118 |
|
174 | | - build-clang: |
175 | | - needs: [build-llvm] |
176 | | - strategy: |
177 | | - fail-fast: false |
178 | | - matrix: |
179 | | - runs-on: [ubuntu-22.04, ubuntu-latest, macos-15-intel, macos-14, windows-latest] |
180 | | - build-type: [Release] |
181 | | - runs-on: ${{matrix.runs-on}} |
182 | | - steps: |
183 | | - - name: Bootstrap Build Environment (Windows) |
184 | | - if: runner.os == 'Windows' |
185 | | - run: "cmake -E echo >> $env:GITHUB_ENV ENV=env:" |
186 | | - |
187 | | - - name: Configure Git (Windows) |
188 | | - if: runner.os == 'Windows' |
189 | | - run: git config --global core.autocrlf false |
190 | | - |
191 | | - - name: Set Windows Environment |
| 119 | + - name: Show regenerated Z80 diffs (Windows) |
192 | 120 | if: runner.os == 'Windows' |
| 121 | + shell: bash |
193 | 122 | run: | |
194 | | - $path = vswhere -latest -products * -requires Microsoft.VisualStudio.Component.VC.Tools.x86.x64 -property installationPath |
195 | | - cmake -E echo >> $${{env.ENV}}GITHUB_PATH "$(join-path $path 'VC\Tools\Llvm\bin')" |
196 | | - cmd /s /c >> $${{env.ENV}}GITHUB_ENV """$(join-path $path 'Common7\Tools\vsdevcmd.bat')"" > nul && set" |
197 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CC=clang-cl |
198 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CXX=clang-cl |
199 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV EXE=.exe |
200 | | -
|
201 | | - - name: Uninstall Unused Packages (Linux) |
202 | | - if: runner.os == 'Linux' |
203 | | - run: sudo apt-get remove azure-cli libgl1-mesa-dri ^google-chrome.*$ ^dotnet-sdk-[0-9.]+$ firefox |
204 | | - |
205 | | - - name: Prepare Build Environment (Linux/macOS) |
206 | | - if: runner.os != 'Windows' |
207 | | - run: | |
208 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CC=clang |
209 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CFLAGS=-std=c17 |
210 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CXX=clang++ |
211 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CXXFLAGS=-std=c++17 |
212 | | -
|
213 | | - - name: Prepare Build Configuration (Release) |
214 | | - if: matrix.build-type == 'Release' |
215 | | - run: cmake -E echo >> $${{env.ENV}}GITHUB_ENV CMAKE_CONFIG=-DLLVM_TARGETS_TO_BUILD:STRING= -DLLVM_ENABLE_LTO:STRING=OFF -DLLVM_STATIC_LINK_CXX_STDLIB:BOOL=ON |
216 | | - |
217 | | - - name: Set DYLIB (Debug) |
218 | | - if: matrix.build-type == 'Debug' |
219 | | - run: cmake -E echo >> $${{env.ENV}}GITHUB_ENV DYLIB=ON |
220 | | - - name: Set DYLIB (Non-Debug) |
221 | | - if: matrix.build-type != 'Debug' |
222 | | - run: cmake -E echo >> $${{env.ENV}}GITHUB_ENV DYLIB=OFF |
223 | | - |
224 | | - - name: Install Build Dependencies (Linux) |
225 | | - if: runner.os == 'Linux' |
226 | | - run: | |
227 | | - sudo apt-get install -y ninja-build |
228 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV |
229 | | - - name: Install Build Dependencies (macOS) |
230 | | - if: runner.os == 'macOS' |
231 | | - run: | |
232 | | - brew install ninja |
233 | | - cmake -E echo >> $${{env.ENV}}GITHUB_PATH /usr/local/opt/llvm/bin |
234 | | - - name: Install Build Dependencies (Windows) |
235 | | - if: runner.os == 'Windows' |
236 | | - run: pip install ninja |
237 | | - |
238 | | - - name: Install sccache |
239 | | - uses: mozilla-actions/sccache-action@v0.0.9 |
240 | | - with: |
241 | | - version: "v0.12.0" |
242 | | - - name: Configure sccache |
243 | | - run: | |
244 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV SCCACHE_GHA_ENABLED=true |
245 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CMAKE_C_COMPILER_LAUNCHER=sccache |
246 | | - cmake -E echo >> $${{env.ENV}}GITHUB_ENV CMAKE_CXX_COMPILER_LAUNCHER=sccache |
247 | | -
|
248 | | - - name: Checkout Project |
249 | | - uses: actions/checkout@v4 |
250 | | - with: |
251 | | - path: src |
252 | | - - name: Sparse Checkout |
253 | | - working-directory: src |
254 | | - run: | |
255 | | - git version |
256 | | - git sparse-checkout init --cone |
257 | | - git sparse-checkout set cmake third-party clang |
258 | | -
|
259 | | - - name: Download LLVM |
260 | | - uses: actions/download-artifact@v4 |
261 | | - with: |
262 | | - name: LLVM${{matrix.runs-on}}${{matrix.build-type}} |
263 | | - path: llvm |
264 | | - - name: Set Executable (Linux/macOS) |
265 | | - if: runner.os != 'Windows' |
266 | | - run: chmod +x llvm/bin/* |
267 | | - |
268 | | - - name: Configure Clang |
269 | | - run: cmake -Ssrc/clang -Bbuild -GNinja -DCMAKE_BUILD_TYPE:STRING=${{matrix.build-type}} ${{env.CMAKE_CONFIG}} -DBUILD_SHARED_LIBS:BOOL=OFF -DCMAKE_INSTALL_PREFIX:PATH="${{github.workspace}}/clang" -DCMAKE_C_COMPILER:FILEPATH="${{env.CC}}" -DCMAKE_C_FLAGS:STRING="${{env.CFLAGS}}" -DCMAKE_CXX_COMPILER:FILEPATH="${{env.CXX}}" -DCMAKE_CXX_FLAGS:STRING="${{env.CXXFLAGS}}" -DLLVM_DIR:PATH="${{github.workspace}}/llvm/lib/cmake/llvm" -DCLANG_LINK_CLANG_DYLIB:BOOL=${{env.DYLIB}} -DLLVM_INCLUDE_TESTS:BOOL=OFF -DCLANG_TOOL_AMDGPU_ARCH_BUILD:BOOL=OFF -DCLANG_TOOL_APINOTES_TEST_BUILD:BOOL=OFF -DCLANG_TOOL_ARCMT_TEST_BUILD:BOOL=ON -DCLANG_TOOL_CLANG_CHECK_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_DIFF_BUILD:BOOL=ON -DCLANG_TOOL_CLANG_EXTDEF_MAPPING_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_FORMAT_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_FORMAT_VS_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_FUZZER_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_IMPORT_TEST_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_LINKER_WRAPPER_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_NVLINK_WRAPPER_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_OFFLOAD_BUNDLER_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_OFFLOAD_PACKAGER_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_OFFLOAD_WRAPPER_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_REFACTOR_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_RENAME_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_REPL_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_SCAN_DEPS_BUILD:BOOL=OFF -DCLANG_TOOL_CLANG_SHLIB_BUILD:BOOL=OFF -DCLANG_TOOL_C_ARCMT_TEST_BUILD:BOOL=ON -DCLANG_TOOL_C_INDEX_TEST_BUILD:BOOL=OFF -DCLANG_TOOL_DIAGTOOL_BUILD:BOOL=OFF -DCLANG_TOOL_DRIVER_BUILD:BOOL=ON -DCLANG_TOOL_LIBCLANG_BUILD:BOOL=ON -DCLANG_TOOL_SCAN_BUILD_BUILD:BOOL=OFF -DCLANG_TOOL_SCAN_BUILD_PY_BUILD:BOOL=OFF -DCLANG_TOOL_SCAN_VIEW_BUILD:BOOL=OFF |
270 | | - |
271 | | - - name: Build Clang |
272 | | - run: cmake --build build --config ${{matrix.build-type}} --parallel |
273 | | - |
274 | | - - name: Install Clang |
275 | | - run: cmake --build build --config ${{matrix.build-type}} --target install |
276 | | - - name: Upload Clang |
277 | | - uses: actions/upload-artifact@v4 |
278 | | - with: |
279 | | - name: Clang${{matrix.runs-on}}${{matrix.build-type}} |
280 | | - path: clang |
281 | | - |
282 | | - - name: Install ez80-clang |
283 | | - run: cmake -E copy clang/bin/clang${{env.EXE}} ez80-clang${{env.EXE}} |
284 | | - - name: Strip ez80-clang |
285 | | - if: runner.os != 'Windows' |
286 | | - run: strip ez80-clang${{env.EXE}} |
287 | | - - name: Test ez80-clang |
288 | | - run: cmake -E echo "void test(void){}" | ./ez80-clang${{env.EXE}} -S -xc - -o - |
289 | | - - name: Upload ez80-clang |
290 | | - uses: actions/upload-artifact@v4 |
291 | | - with: |
292 | | - name: ez80-clang${{env.EXE}}-${{matrix.runs-on}}${{matrix.build-type}} |
293 | | - path: ez80-clang${{env.EXE}} |
294 | | - |
295 | | - - name: Download Test |
296 | | - if: runner.os != 'Windows' |
297 | | - uses: actions/download-artifact@v4 |
298 | | - with: |
299 | | - name: Test${{matrix.runs-on}}${{matrix.build-type}} |
300 | | - path: test |
301 | | - - name: Install Test |
302 | | - if: runner.os != 'Windows' |
303 | | - run: cmake -E copy build/bin/arcmt-test${{env.EXE}} build/bin/c-arcmt-test${{env.EXE}} build/bin/clang-diff${{env.EXE}} build/bin/clang-tblgen${{env.EXE}} test/bin |
304 | | - - name: Upload Test |
305 | | - if: runner.os != 'Windows' |
306 | | - uses: actions/upload-artifact@v4 |
307 | | - with: |
308 | | - name: Test${{matrix.runs-on}}${{matrix.build-type}} |
309 | | - path: test |
310 | | - overwrite: true |
311 | | - |
312 | | - - name: Disk Usage (Linux/macOS) |
313 | | - if: runner.os != 'Windows' |
314 | | - run: df -h |
315 | | - - name: Disk Usage (Windows) |
316 | | - if: runner.os == 'Windows' |
317 | | - run: Get-CimInstance Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size |
318 | | - |
319 | | - test-llvm-z80: |
320 | | - needs: [build-llvm] |
321 | | - strategy: |
322 | | - fail-fast: false |
323 | | - matrix: |
324 | | - runs-on: [ubuntu-22.04, ubuntu-latest, macos-15-intel, macos-14] |
325 | | - build-type: [Release] |
326 | | - runs-on: ${{matrix.runs-on}} |
327 | | - steps: |
328 | | - - name: Uninstall Unused Packages (Linux) |
329 | | - if: runner.os == 'Linux' |
330 | | - run: sudo apt-get remove azure-cli libgl1-mesa-dri ^google-chrome.*$ ^dotnet-sdk-[0-9.]+$ firefox |
331 | | - |
332 | | - - name: Checkout Project |
333 | | - uses: actions/checkout@v4 |
334 | | - with: |
335 | | - path: src |
336 | | - - name: Sparse Checkout |
337 | | - working-directory: src |
338 | | - run: | |
339 | | - git version |
340 | | - git sparse-checkout init --cone |
341 | | - git sparse-checkout set cmake llvm/test llvm/utils/lit/lit llvm/unittest third-party |
342 | | -
|
343 | | - - name: Download Test |
344 | | - uses: actions/download-artifact@v4 |
345 | | - with: |
346 | | - name: Test${{matrix.runs-on}}${{matrix.build-type}} |
347 | | - path: build |
348 | | - - name: Download LLVM |
349 | | - uses: actions/download-artifact@v4 |
350 | | - with: |
351 | | - name: LLVM${{matrix.runs-on}}${{matrix.build-type}} |
352 | | - path: build |
353 | | - - name: Set Executable |
354 | | - run: chmod +x build/bin/* build/unittests/Target/Z80/Z80Tests${{env.EXE}} |
355 | | - |
356 | | - - name: Unittest LLVM Z80 |
357 | | - run: build/unittests/Target/Z80/Z80Tests${{env.EXE}} |
358 | | - - name: Test LLVM Z80 |
359 | | - run: build/bin/llvm-lit${{env.PY}} -v src/llvm/test/CodeGen/Z80 |
| 123 | + if git -C src diff --quiet -- llvm/test/CodeGen/Z80; then |
| 124 | + echo "No regenerated Z80 test changes." |
| 125 | + else |
| 126 | + git -C src status --short -- llvm/test/CodeGen/Z80 |
| 127 | + git -C src diff -- llvm/test/CodeGen/Z80 |
| 128 | + exit 1 |
| 129 | + fi |
360 | 130 |
|
361 | 131 | nightly: |
362 | 132 | runs-on: ubuntu-latest |
363 | | - needs: [build-clang, test-llvm-z80] |
| 133 | + needs: [build-llvm] |
364 | 134 |
|
365 | | - if: github.ref == 'refs/heads/z80' && github.event_name != 'pull_request' |
| 135 | + if: false && github.ref == 'refs/heads/z80' && github.event_name != 'pull_request' |
366 | 136 | steps: |
367 | 137 | - name: Download Ubuntu 22.04 ez80-clang |
368 | 138 | uses: actions/download-artifact@v4 |
|
0 commit comments