|
100 | 100 | // CHK-FPGA-AOCO-WIN: llc{{.*}} "-filetype=obj" "-o" "[[FINALOBJW:.+\.obj]]" "[[FINALBC]]"
|
101 | 101 | // CHK-FPGA-AOCO-LIN: ld{{.*}} "[[INPUTLIB]]" {{.*}} "[[FINALOBJL]]"
|
102 | 102 | // CHK-FPGA-AOCO-WIN: link.exe{{.*}} "{{.*}}[[INPUTLIB]]" {{.*}} "[[FINALOBJW]]"
|
| 103 | + |
| 104 | +/// aoco archive check with emulation |
| 105 | +// RUN: %clangxx -target x86_64-unknown-linux-gnu -fsycl -fno-sycl-device-lib=all -fintelfpga %t_aoco.a %s -ccc-print-phases 2>&1 \ |
| 106 | + // RUN: | FileCheck -check-prefix=CHK-FPGA-AOCO-PHASES-EMU %s |
| 107 | +// CHK-FPGA-AOCO-PHASES-EMU: 0: input, "[[INPUTA:.+\.a]]", object, (host-sycl) |
| 108 | +// CHK-FPGA-AOCO-PHASES-EMU: 1: input, "[[INPUTCPP:.+\.cpp]]", c++, (host-sycl) |
| 109 | +// CHK-FPGA-AOCO-PHASES-EMU: 2: preprocessor, {1}, c++-cpp-output, (host-sycl) |
| 110 | +// CHK-FPGA-AOCO-PHASES-EMU: 3: append-footer, {2}, c++, (host-sycl) |
| 111 | +// CHK-FPGA-AOCO-PHASES-EMU: 4: preprocessor, {3}, c++-cpp-output, (host-sycl) |
| 112 | +// CHK-FPGA-AOCO-PHASES-EMU: 5: input, "[[INPUTCPP]]", c++, (device-sycl) |
| 113 | +// CHK-FPGA-AOCO-PHASES-EMU: 6: preprocessor, {5}, c++-cpp-output, (device-sycl) |
| 114 | +// CHK-FPGA-AOCO-PHASES-EMU: 7: compiler, {6}, ir, (device-sycl) |
| 115 | +// CHK-FPGA-AOCO-PHASES-EMU: 8: offload, "host-sycl (x86_64-unknown-linux-gnu)" {4}, "device-sycl (spir64_fpga-unknown-unknown-sycldevice)" {7}, c++-cpp-output |
| 116 | +// CHK-FPGA-AOCO-PHASES-EMU: 9: compiler, {8}, ir, (host-sycl) |
| 117 | +// CHK-FPGA-AOCO-PHASES-EMU: 10: backend, {9}, assembler, (host-sycl) |
| 118 | +// CHK-FPGA-AOCO-PHASES-EMU: 11: assembler, {10}, object, (host-sycl) |
| 119 | +// CHK-FPGA-AOCO-PHASES-EMU: 12: linker, {0, 11}, image, (host-sycl) |
| 120 | +// CHK-FPGA-AOCO-PHASES-EMU: 13: linker, {0, 11}, host_dep_image, (host-sycl) |
| 121 | +// CHK-FPGA-AOCO-PHASES-EMU: 14: clang-offload-deps, {13}, ir, (host-sycl) |
| 122 | +// CHK-FPGA-AOCO-PHASES-EMU: 15: input, "[[INPUTA]]", archive |
| 123 | +// CHK-FPGA-AOCO-PHASES-EMU: 16: clang-offload-unbundler, {15}, archive |
| 124 | +// CHK-FPGA-AOCO-PHASES-EMU: 17: linker, {7, 14, 16}, ir, (device-sycl) |
| 125 | +// CHK-FPGA-AOCO-PHASES-EMU: 18: sycl-post-link, {17}, tempfiletable, (device-sycl) |
| 126 | +// CHK-FPGA-AOCO-PHASES-EMU: 19: file-table-tform, {18}, tempfilelist, (device-sycl) |
| 127 | +// CHK-FPGA-AOCO-PHASES-EMU: 20: llvm-spirv, {19}, tempfilelist, (device-sycl) |
| 128 | +// CHK-FPGA-AOCO-PHASES-EMU: 21: input, "[[INPUTA]]", archive |
| 129 | +// CHK-FPGA-AOCO-PHASES-EMU: 22: clang-offload-unbundler, {21}, fpga_dep_list |
| 130 | +// CHK-FPGA-AOCO-PHASES-EMU: 23: backend-compiler, {20, 22}, fpga_aocx, (device-sycl) |
| 131 | +// CHK-FPGA-AOCO-PHASES-EMU: 24: file-table-tform, {18, 23}, tempfiletable, (device-sycl) |
| 132 | +// CHK-FPGA-AOCO-PHASES-EMU: 25: clang-offload-wrapper, {24}, object, (device-sycl) |
| 133 | +// CHK-FPGA-AOCO-PHASES-EMU: 26: offload, "host-sycl (x86_64-unknown-linux-gnu)" {12}, "device-sycl (spir64_fpga-unknown-unknown-sycldevice)" {25}, image |
| 134 | + |
| 135 | +/// aoco emulation test, checking tools |
| 136 | +// RUN: %clangxx -target x86_64-unknown-linux-gnu -fsycl -fno-sycl-device-lib=all -fintelfpga %t_aoco.a -### %s 2>&1 \ |
| 137 | +// RUN: | FileCheck -check-prefixes=CHK-FPGA-AOCO-EMU,CHK-FPGA-AOCO-EMU-LIN %s |
| 138 | +// RUN: %clang_cl -fsycl -fno-sycl-device-lib=all -fintelfpga %t_aoco_cl.a -### %s 2>&1 \ |
| 139 | + // RUN: | FileCheck -check-prefixes=CHK-FPGA-AOCO-EMU,CHK-FPGA-AOCO-EMU-WIN %s |
| 140 | +// CHK-FPGA-AOCO-EMU: clang-offload-bundler{{.*}} "-type=a" "-targets=sycl-spir64_fpga-unknown-unknown-sycldevice" "-inputs=[[INPUTLIB:.+\.a]]" "-outputs=[[OUTLIB:.+\.a]]" "-unbundle" |
| 141 | +// CHK-FPGA-AOCO-EMU: llvm-link{{.*}} "[[OUTLIB]]" "-o" "[[LINKEDBC:.+\.bc]]" |
| 142 | +// CHK-FPGA-AOCO-EMU: sycl-post-link{{.*}} "-split-esimd"{{.*}} "-O2" "-spec-const=default" "-o" "[[SPLTABLE:.+\.table]]" "[[LINKEDBC]]" |
| 143 | +// CHK-FPGA-AOCO-EMU: file-table-tform{{.*}} "-o" "[[TABLEOUT:.+\.txt]]" "[[SPLTABLE]]" |
| 144 | +// CHK-FPGA-AOCO-EMU: llvm-spirv{{.*}} "-o" "[[TARGSPV:.+\.txt]]" {{.*}} "[[TABLEOUT]]" |
| 145 | +// CHK-FPGA-AOCO-EMU: opencl-aot{{.*}} "-device=fpga_fast_emu" "-spv=[[TARGSPV]]" "-ir=[[AOCXOUT:.+\.aocx]]" |
| 146 | +// CHK-FPGA-AOCO-EMU: file-table-tform{{.*}} "-o" "[[TABLEOUT2:.+\.table]]" "[[SPLTABLE]]" "[[AOCXOUT]]" |
| 147 | +// CHK-FPGA-AOCO-EMU: clang-offload-wrapper{{.*}} "-o=[[FINALBC:.+\.bc]]" {{.*}} "-target=spir64_fpga" "-kind=sycl" "-batch" "[[TABLEOUT2]]" |
| 148 | +// CHK-FPGA-AOCO-EMU-LIN: llc{{.*}} "-filetype=obj" "-o" "[[FINALOBJL:.+\.o]]" "[[FINALBC]]" |
| 149 | +// CHK-FPGA-AOCO-EMU-WIN: llc{{.*}} "-filetype=obj" "-o" "[[FINALOBJW:.+\.obj]]" "[[FINALBC]]" |
| 150 | +// CHK-FPGA-AOCO-EMU-LIN: ld{{.*}} "[[INPUTLIB]]" {{.*}} "[[FINALOBJL]]" |
| 151 | +// CHK-FPGA-AOCO-EMU-WIN: link.exe{{.*}} "{{.*}}[[INPUTLIB]]" {{.*}} "[[FINALOBJW]]" |
0 commit comments