Skip to content

Commit 03a92e5

Browse files
committed
Run Z80 specific tests after building.
1 parent 7e02a49 commit 03a92e5

File tree

1 file changed

+91
-22
lines changed

1 file changed

+91
-22
lines changed

.github/workflows/cmake.yml

+91-22
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ jobs:
6565
run: pip install ninja
6666

6767
- name: Checkout Project
68-
uses: actions/checkout@v2
68+
uses: actions/checkout@v3.0.2
6969
with:
7070
path: src
7171
- name: Sparse Checkout
@@ -85,7 +85,7 @@ jobs:
8585
cmake --build build --config ${{matrix.build-type}} --target install
8686
cmake -E copy build/include/llvm/Config/config.h llvm/include/llvm/Config
8787
- name: Upload LLVM
88-
uses: actions/upload-artifact@v2
88+
uses: actions/upload-artifact@v3
8989
with:
9090
name: LLVM${{runner.os}}${{matrix.build-type}}
9191
path: llvm
@@ -96,7 +96,7 @@ jobs:
9696
if: runner.os != 'Windows'
9797
run: strip ez80-link${{env.EXE}}
9898
- name: Upload ez80-link
99-
uses: actions/upload-artifact@v2
99+
uses: actions/upload-artifact@v3
100100
with:
101101
name: ez80-link${{env.EXE}}-${{runner.os}}${{matrix.build-type}}
102102
path: ez80-link${{env.EXE}}
@@ -107,7 +107,7 @@ jobs:
107107
if: runner.os != 'Windows'
108108
run: strip ez80-lto${{env.EXE}}
109109
- name: Upload ez80-lto
110-
uses: actions/upload-artifact@v2
110+
uses: actions/upload-artifact@v3
111111
with:
112112
name: ez80-lto${{env.EXE}}-${{runner.os}}${{matrix.build-type}}
113113
path: ez80-lto${{env.EXE}}
@@ -118,24 +118,27 @@ jobs:
118118
if: runner.os != 'Windows'
119119
run: strip ez80-lto2${{env.EXE}}
120120
- name: Upload ez80-lto2
121-
uses: actions/upload-artifact@v2
121+
uses: actions/upload-artifact@v3
122122
with:
123123
name: ez80-lto2${{env.EXE}}-${{runner.os}}${{matrix.build-type}}
124124
path: ez80-lto2${{env.EXE}}
125125

126126
- name: Configure Test
127127
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_ELFABI_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
128+
- name: Build Test
129+
run: cmake --build build --config ${{matrix.build-type}} --target Z80Tests
128130
- name: Install Test
129131
run: |
130-
cmake -E make_directory test/bin test/test/Unit test/tools/clang/bin test/tools/clang/test/Unit
132+
cmake -E make_directory test/bin test/test/Unit test/tools/clang/bin test/tools/clang/test/Unit test/unittests/Target/Z80
131133
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
132134
cmake -E copy build/test/lit.site.cfg.py test/test
133135
cmake -E copy build/test/Unit/lit.site.cfg.py test/test/Unit
134136
cmake -E copy build/tools/clang/bin/gen_ast_dump_json_test.py test/tools/clang/bin
135137
cmake -E copy build/tools/clang/test/lit.site.cfg.py test/tools/clang/test
136138
cmake -E copy build/tools/clang/test/Unit/lit.site.cfg.py test/tools/clang/test/Unit
139+
cmake -E copy build/unittests/Target/Z80/Z80Tests${{env.EXE}} test/unittests/Target/Z80
137140
- name: Upload Test
138-
uses: actions/upload-artifact@v2
141+
uses: actions/upload-artifact@v3
139142
with:
140143
name: Test${{runner.os}}${{matrix.build-type}}
141144
path: test
@@ -206,7 +209,7 @@ jobs:
206209
run: pip install ninja
207210

208211
- name: Checkout Project
209-
uses: actions/checkout@v2
212+
uses: actions/checkout@v3.0.2
210213
with:
211214
path: src
212215
- name: Sparse Checkout
@@ -217,7 +220,7 @@ jobs:
217220
git sparse-checkout set cmake third-party clang
218221
219222
- name: Download LLVM
220-
uses: actions/download-artifact@v2
223+
uses: actions/download-artifact@v3
221224
with:
222225
name: LLVM${{runner.os}}${{matrix.build-type}}
223226
path: llvm
@@ -233,7 +236,7 @@ jobs:
233236
- name: Install Clang
234237
run: cmake --build build --config ${{matrix.build-type}} --target install
235238
- name: Upload Clang
236-
uses: actions/upload-artifact@v2
239+
uses: actions/upload-artifact@v3
237240
with:
238241
name: Clang${{runner.os}}${{matrix.build-type}}
239242
path: clang
@@ -246,20 +249,20 @@ jobs:
246249
- name: Test ez80-clang
247250
run: cmake -E echo "void test(void){}" | ./ez80-clang${{env.EXE}} -S -xc - -o -
248251
- name: Upload ez80-clang
249-
uses: actions/upload-artifact@v2
252+
uses: actions/upload-artifact@v3
250253
with:
251254
name: ez80-clang${{env.EXE}}-${{runner.os}}${{matrix.build-type}}
252255
path: ez80-clang${{env.EXE}}
253256

254257
- name: Download Test
255-
uses: actions/download-artifact@v2
258+
uses: actions/download-artifact@v3
256259
with:
257260
name: Test${{runner.os}}${{matrix.build-type}}
258261
path: test
259262
- name: Install Test
260263
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
261264
- name: Upload Test
262-
uses: actions/upload-artifact@v2
265+
uses: actions/upload-artifact@v3
263266
with:
264267
name: Test${{runner.os}}${{matrix.build-type}}
265268
path: test
@@ -271,6 +274,58 @@ jobs:
271274
if: always() && runner.os == 'Windows'
272275
run: wmic logicaldisk get size,freespace,caption
273276

277+
test-llvm-z80:
278+
needs: [build-llvm]
279+
strategy:
280+
fail-fast: false
281+
matrix:
282+
runs-on: [ubuntu-latest, macos-latest, windows-latest]
283+
build-type: [Release]
284+
runs-on: ${{matrix.runs-on}}
285+
steps:
286+
- name: Uninstall Unused Packages
287+
if: runner.os == 'Linux'
288+
run: sudo apt-get remove azure-cli google-cloud-sdk ^adoptopenjdk-[0-9]+-hotspot$ hhvm libgl1-mesa-dri ^google-chrome.*$ ^dotnet-sdk-[0-9.]+$ firefox
289+
290+
- name: Bootstrap Build Environment
291+
if: runner.os == 'Windows'
292+
run: "cmake -E echo >> $env:GITHUB_ENV ENV=env:"
293+
- name: Prepare Build Environment
294+
if: runner.os == 'Windows'
295+
run: |
296+
cmake -E echo >> $${{env.ENV}}GITHUB_ENV EXE=.exe
297+
cmake -E echo >> $${{env.ENV}}GITHUB_ENV PY=.py
298+
299+
- name: Checkout Project
300+
uses: actions/[email protected]
301+
with:
302+
path: src
303+
- name: Sparse Checkout
304+
working-directory: src
305+
run: |
306+
git version
307+
git sparse-checkout init --cone
308+
git sparse-checkout set cmake llvm/test llvm/utils/lit/lit llvm/unittest third-party
309+
310+
- name: Download Test
311+
uses: actions/download-artifact@v3
312+
with:
313+
name: Test${{runner.os}}${{matrix.build-type}}
314+
path: build
315+
- name: Download LLVM
316+
uses: actions/download-artifact@v3
317+
with:
318+
name: LLVM${{runner.os}}${{matrix.build-type}}
319+
path: build
320+
- name: Set Executable
321+
if: runner.os != 'Windows'
322+
run: chmod +x build/bin/* build/unittests/Target/Z80/Z80Tests${{env.EXE}}
323+
324+
- name: Unittest LLVM Z80
325+
run: build/unittests/Target/Z80/Z80Tests${{env.EXE}}
326+
- name: Test LLVM Z80
327+
run: build/bin/llvm-lit${{env.PY}} -v src/llvm/test/CodeGen/Z80
328+
274329
test-llvm:
275330
needs: [build-llvm]
276331
strategy:
@@ -286,8 +341,15 @@ jobs:
286341
if: runner.os == 'Linux'
287342
run: sudo apt-get remove azure-cli google-cloud-sdk ^adoptopenjdk-[0-9]+-hotspot$ hhvm libgl1-mesa-dri ^google-chrome.*$ ^dotnet-sdk-[0-9.]+$ firefox
288343

344+
- name: Bootstrap Build Environment
345+
if: runner.os == 'Windows'
346+
run: "cmake -E echo >> $env:GITHUB_ENV ENV=env:"
347+
- name: Prepare Build Environment
348+
if: runner.os == 'Windows'
349+
run: cmake -E echo >> $${{env.ENV}}GITHUB_ENV PY=.py
350+
289351
- name: Checkout Project
290-
uses: actions/checkout@v2
352+
uses: actions/checkout@v3.0.2
291353
with:
292354
path: src
293355
- name: Sparse Checkout
@@ -298,12 +360,12 @@ jobs:
298360
git sparse-checkout set cmake third-party llvm/test llvm/utils/lit/lit
299361
300362
- name: Download Test
301-
uses: actions/download-artifact@v2
363+
uses: actions/download-artifact@v3
302364
with:
303365
name: Test${{runner.os}}${{matrix.build-type}}
304366
path: build
305367
- name: Download LLVM
306-
uses: actions/download-artifact@v2
368+
uses: actions/download-artifact@v3
307369
with:
308370
name: LLVM${{runner.os}}${{matrix.build-type}}
309371
path: build
@@ -312,7 +374,7 @@ jobs:
312374
run: chmod +x build/bin/*
313375

314376
- name: Test LLVM
315-
run: build/bin/llvm-lit -v src/llvm/test
377+
run: build/bin/llvm-lit${{env.PY}} -v src/llvm/test
316378

317379
test-clang:
318380
needs: [build-llvm, build-clang]
@@ -329,8 +391,15 @@ jobs:
329391
if: runner.os == 'Linux'
330392
run: sudo apt-get remove azure-cli google-cloud-sdk ^adoptopenjdk-[0-9]+-hotspot$ hhvm libgl1-mesa-dri ^google-chrome.*$ ^dotnet-sdk-[0-9.]+$ firefox
331393

394+
- name: Bootstrap Build Environment
395+
if: runner.os == 'Windows'
396+
run: "cmake -E echo >> $env:GITHUB_ENV ENV=env:"
397+
- name: Prepare Build Environment
398+
if: runner.os == 'Windows'
399+
run: cmake -E echo >> $${{env.ENV}}GITHUB_ENV PY=.py
400+
332401
- name: Checkout Project
333-
uses: actions/checkout@v2
402+
uses: actions/checkout@v3.0.2
334403
with:
335404
path: src
336405
- name: Sparse Checkout
@@ -341,17 +410,17 @@ jobs:
341410
git sparse-checkout set cmake third-party clang/test llvm/utils/lit/lit
342411
343412
- name: Download Test
344-
uses: actions/download-artifact@v2
413+
uses: actions/download-artifact@v3
345414
with:
346415
name: Test${{runner.os}}${{matrix.build-type}}
347416
path: build
348417
- name: Download LLVM
349-
uses: actions/download-artifact@v2
418+
uses: actions/download-artifact@v3
350419
with:
351420
name: LLVM${{runner.os}}${{matrix.build-type}}
352421
path: build
353422
- name: Download Clang
354-
uses: actions/download-artifact@v2
423+
uses: actions/download-artifact@v3
355424
with:
356425
name: Clang${{runner.os}}${{matrix.build-type}}
357426
path: build
@@ -360,4 +429,4 @@ jobs:
360429
run: chmod +x build/bin/*
361430

362431
- name: Test Clang
363-
run: build/bin/llvm-lit -v src/clang/test
432+
run: build/bin/llvm-lit${{env.PY}} -v src/clang/test

0 commit comments

Comments
 (0)