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 
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 
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+ 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