|
51 | 51 | // CK-HELP: {{.*}}bc {{.*}}- llvm-bc
|
52 | 52 | // CK-HELP: {{.*}}s {{.*}}- assembler
|
53 | 53 | // CK-HELP: {{.*}}o {{.*}}- object
|
54 |
| -// CK-HELP: {{.*}}a {{.*}}- archive of objects |
55 | 54 | // CK-HELP: {{.*}}gch {{.*}}- precompiled-header
|
56 | 55 | // CK-HELP: {{.*}}ast {{.*}}- clang AST file
|
| 56 | +// CK-HELP: {{.*}}a {{.*}}- archive of objects |
57 | 57 | // CK-HELP: {{.*}}ao {{.*}}- archive with one object; output is an unbundled object
|
58 | 58 | // CK-HELP: {{.*}}aoo {{.*}}- archive; output file is a list of unbundled objects
|
59 | 59 | // CK-HELP: {{.*}}-unbundle {{.*}}- Unbundle bundled file into several output files.
|
|
114 | 114 | // RUN: not clang-offload-bundler -type=a -targets=hxst-powerpcxxle-ibm-linux-gnu,openxp-pxxerpc64le-ibm-linux-gnu,xpenmp-x86_xx-pc-linux-gnu -input=%t.i -input=%t.tgt1 -input=%t.tgt2 -output=%t.bundle.i 2>&1 | FileCheck %s --check-prefix CK-ERR10A
|
115 | 115 | // CK-ERR10A: error: Archive files are only supported for unbundling
|
116 | 116 |
|
117 |
| -// RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -outputs=%t.i,%t.tgt1,%t.tgt2 -inputs=%t.bundle.i -unbundle -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR10 |
| 117 | +// RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -output=%t.i -output=%t.tgt1 -output=%t.tgt2 -input=%t.bundle.i -unbundle -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR10 |
118 | 118 | // CK-ERR10: error: -unbundle and -check-section are not compatible options
|
119 | 119 |
|
120 |
| -// RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -inputs=%t.bundle.i,%t.i -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR11 |
121 |
| -// CK-ERR11: error: only one input file supported in checking mode |
122 |
| - |
123 |
| -// RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -inputs=%t.bundle.i -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR12 |
124 |
| -// CK-ERR12: error: only one target supported in checking mode |
125 |
| - |
126 |
| -// RUN: not clang-offload-bundler -type=i -targets=openmp-powerpc64le-ibm-linux-gnu -inputs=%t.bundle.i -outputs=%t.r -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR13 |
127 |
| -// CK-ERR13: error: no output file supported in checking mode |
| 120 | +// RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -input=%t.bundle.i,%t.i -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR11 |
| 121 | +// CK-ERR11: error: only one target supported in checking mode |
128 | 122 |
|
129 | 123 | // RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -input=%t.i -inputs=%t.tgt1,%t.tgt2 -output=%t.bundle.i -unbundle 2>&1 | FileCheck %s --check-prefix CK-ERR11A
|
130 | 124 | // CK-ERR11A: error: -inputs and -input cannot be used together, use only -input instead
|
131 | 125 |
|
132 | 126 | // RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -output=%t.i -outputs=%t.tgt1,%t.tgt2 -input=%t.bundle.i -unbundle 2>&1 | FileCheck %s --check-prefix CK-ERR11B
|
133 | 127 | // CK-ERR11B: error: -outputs and -output cannot be used together, use only -output instead
|
134 | 128 |
|
| 129 | +// RUN: not clang-offload-bundler -type=i -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu -input=%t.bundle.i -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR12 |
| 130 | +// CK-ERR12: error: only one target supported in checking mode |
| 131 | + |
| 132 | +// RUN: not clang-offload-bundler -type=i -targets=openmp-powerpc64le-ibm-linux-gnu -input=%t.bundle.i -output=%t.r -check-section 2>&1 | FileCheck %s --check-prefix CK-ERR13 |
| 133 | +// CK-ERR13: error: no output file supported in checking mode |
| 134 | + |
135 | 135 | //
|
136 | 136 | // Check text bundle. This is a readable format, so we check for the format we expect to find.
|
137 | 137 | //
|
|
341 | 341 | //
|
342 | 342 | // Check target checking
|
343 | 343 | //
|
344 |
| -// RUN: clang-offload-bundler -type=bc -targets=host-%itanium_abi_triple -inputs=%t.bundle3.bc -check-section |
345 |
| -// RUN: clang-offload-bundler -type=bc -targets=openmp-powerpc64le-ibm-linux-gnu -inputs=%t.bundle3.bc -check-section |
346 |
| -// RUN: clang-offload-bundler -type=bc -targets=openmp-x86_64-pc-linux-gnu -inputs=%t.bundle3.bc -check-section |
347 |
| -// RUN: not clang-offload-bundler -type=bc -targets=fpga-fpga_aocr-intel-linux -inputs=%t.bundle3.bc -check-section |
348 |
| -// RUN: not clang-offload-bundler -type=bc -targets=fpga-fpga_aoco-intel-linux -inputs=%t.bundle3.bc -check-section |
349 |
| -// RUN: not clang-offload-bundler -type=bc -targets=fpga-fpga_aocx-intel-linux -inputs=%t.bundle3.bc -check-section |
| 344 | +// RUN: clang-offload-bundler -type=bc -targets=host-%itanium_abi_triple -input=%t.bundle3.bc -check-section |
| 345 | +// RUN: clang-offload-bundler -type=bc -targets=openmp-powerpc64le-ibm-linux-gnu -input=%t.bundle3.bc -check-section |
| 346 | +// RUN: clang-offload-bundler -type=bc -targets=openmp-x86_64-pc-linux-gnu -input=%t.bundle3.bc -check-section |
| 347 | +// RUN: not clang-offload-bundler -type=bc -targets=fpga-fpga_aocr-intel-linux -input=%t.bundle3.bc -check-section |
| 348 | +// RUN: not clang-offload-bundler -type=bc -targets=fpga-fpga_aoco-intel-linux -input=%t.bundle3.bc -check-section |
| 349 | +// RUN: not clang-offload-bundler -type=bc -targets=fpga-fpga_aocx-intel-linux -input=%t.bundle3.bc -check-section |
350 | 350 |
|
351 | 351 | //
|
352 | 352 | // Check archive bundle.
|
|
356 | 356 | // RUN: echo 'Invalid object' > %t.invalid.o
|
357 | 357 | // RUN: rm -f %t.a
|
358 | 358 | // RUN: llvm-ar crv %t.a %t.bundle3.o %t.invalid.o
|
359 |
| -// RUN: clang-offload-bundler -type=aoo -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -outputs=%t.host.lst,%t.tgt1.lst,%t.tgt2.lst -inputs=%t.a -unbundle |
| 359 | +// RUN: clang-offload-bundler -type=aoo -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -output=%t.host.lst -output=%t.tgt1.lst -output=%t.tgt2.lst -input=%t.a -unbundle |
360 | 360 | // RUN: wc -l %t.host.lst | FileCheck %s --check-prefix=CHECK-AR-FILE-LIST
|
361 | 361 | // RUN: wc -l %t.tgt1.lst | FileCheck %s --check-prefix=CHECK-AR-FILE-LIST
|
362 | 362 | // RUN: wc -l %t.tgt2.lst | FileCheck %s --check-prefix=CHECK-AR-FILE-LIST
|
|
367 | 367 | // CHECK-AR-FILE-LIST: 1
|
368 | 368 |
|
369 | 369 | // Check single-file mode.
|
370 |
| -// RUN: clang-offload-bundler -type=ao -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -outputs=%t.host.out,%t.tgt1.out,%t.tgt2.out -inputs=%t.a -unbundle |
| 370 | +// RUN: clang-offload-bundler -type=ao -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -output=%t.host.out -output=%t.tgt1.out -output=%t.tgt2.out -input=%t.a -unbundle |
371 | 371 | // RUN: diff %t.bundle3.o %t.host.out
|
372 | 372 | // RUN: diff %t.tgt1 %t.tgt1.out
|
373 | 373 | // RUN: diff %t.tgt2 %t.tgt2.out
|
374 | 374 |
|
375 | 375 | // Check that bundler does not accept multi-file archive in single-file mode.
|
376 | 376 | // RUN: cp %t.bundle3.o %t.bundle4.o
|
377 | 377 | // RUN: llvm-ar crv %t.a %t.bundle3.o %t.bundle4.o %t.invalid.o
|
378 |
| -// RUN: not clang-offload-bundler -type=ao -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -outputs=%t.host.out,%t.tgt1.out,%t.tgt2.out -inputs=%t.a -unbundle 2>&1 \ |
| 378 | +// RUN: not clang-offload-bundler -type=ao -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -output=%t.host.out -output=%t.tgt1.out -output=%t.tgt2.out -input=%t.a -unbundle 2>&1 \ |
379 | 379 | // RUN: | FileCheck %s --check-prefix CHECK-MULTI-FILE-AR-ERROR
|
380 | 380 |
|
381 | 381 | // CHECK-MULTI-FILE-AR-ERROR: 'ao' file type is requested, but the archive contains multiple device objects; use 'aoo' instead
|
|
389 | 389 | // RUN: diff %t.tgt2 %t.res.tgt2
|
390 | 390 |
|
391 | 391 | // Check archive mode.
|
392 |
| -// RUN: clang-offload-bundler -type=a -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -outputs=%t.host.a,%t.tgt1.a,%t.tgt2.a -inputs=%t.a -unbundle |
| 392 | +// RUN: clang-offload-bundler -type=a -targets=host-%itanium_abi_triple,openmp-powerpc64le-ibm-linux-gnu,openmp-x86_64-pc-linux-gnu -output=%t.host.a -output=%t.tgt1.a -output=%t.tgt2.a -input=%t.a -unbundle |
393 | 393 | // RUN: cmp %t.host.a %t.a
|
394 | 394 | // RUN: llvm-ar t %t.tgt1.a | FileCheck %s --check-prefix=CHECK-AR-TGT1-LIST
|
395 | 395 | // RUN: llvm-ar t %t.tgt2.a | FileCheck %s --check-prefix=CHECK-AR-TGT2-LIST
|
|
0 commit comments