|
6 | 6 |
|
7 | 7 | // RUN: rm -rf %t && mkdir %t && cd %t |
8 | 8 |
|
9 | | -// RUN: %clang -target x86_64-linux-gnu %s -shared -flto=thin \ |
| 9 | +// RUN: %clang --target=x86_64-linux-gnu %s -shared -flto=thin \ |
10 | 10 | // RUN: -fthinlto-distributor=%python \ |
11 | 11 | // RUN: -Xdist %llvm_src_root/utils/dtlto/local.py \ |
12 | 12 | // RUN: --save-temps \ |
13 | 13 | // RUN: -fuse-ld=lld \ |
14 | 14 | // RUN: -nostdlib \ |
15 | | -// RUN: -nostartfiles \ |
16 | 15 | // RUN: -Wl,--save-temps \ |
17 | 16 | // RUN: -Werror |
18 | 17 |
|
19 | 18 | /// Check that the required output files have been created. |
20 | 19 | // RUN: ls | count 13 |
21 | | -// RUN: ls | FileCheck %s --check-prefix=BITCODE |
22 | | -// RUN: ls | FileCheck %s --check-prefix=BACKEND |
23 | | -// RUN: ls | FileCheck %s --check-prefix=NATIVE |
24 | | -// RUN: ls | FileCheck %s --check-prefix=LLD |
25 | | - |
26 | | -/// Files produced by the bitcode compilation. |
27 | | -// BITCODE: dtlto.bc |
28 | | -// BITCODE: dtlto.i |
29 | | -// BITCODE: dtlto.o |
30 | | - |
31 | | -/// The DTLTO backend emits the jobs description JSON and a summary shard. |
32 | | -// BACKEND: a.{{[0-9]+}}.dist-file.json |
33 | | -// BACKEND: dtlto.{{[0-9]+}}.{{[0-9]+}}.native.o.thinlto.bc{{$}} |
34 | | - |
35 | | -/// Native object output file for dtlto.o. |
36 | | -// NATIVE: dtlto.{{[0-9]+}}.{{[0-9]+}}.native.o{{$}} |
37 | | -/// linked ELF. |
38 | | -// LLD: a.out{{$}} |
39 | | - |
40 | | -/// save-temps incremental files for a.out. |
41 | | -/// TODO: Perhaps we should suppress some of the linker hooks for DTLTO. |
42 | | -// LLD: a.out.0.0.preopt.bc{{$}} |
43 | | -// LLD: a.out.0.2.internalize.bc{{$}} |
44 | | -// LLD: a.out.index.bc{{$}} |
45 | | -// LLD: a.out.index.dot{{$}} |
46 | | -// LLD: a.out.lto.dtlto.o{{$}} |
47 | | -// LLD: a.out.resolution.txt{{$}} |
| 20 | +// RUN: ls | FileCheck %s |
| 21 | + |
| 22 | +/// Produced by the bitcode compilation. |
| 23 | +// CHECK-DAG: {{^}}dtlto.bc{{$}} |
| 24 | +// CHECK-DAG: {{^}}dtlto.i{{$}} |
| 25 | +// CHECK-DAG: {{^}}dtlto.o{{$}} |
| 26 | + |
| 27 | +/// A jobs description JSON and a summary shard is emitted for DTLTO. |
| 28 | +// CHECK-DAG: {{^}}a.[[#]].dist-file.json{{$}} |
| 29 | +// CHECK-DAG: {{^}}dtlto.[[#]].[[#]].native.o.thinlto.bc{{$}} |
| 30 | + |
| 31 | +/// The backend compilation produces a native object output file for dtlto.o. |
| 32 | +// CHECK-DAG: dtlto.[[#]].[[#]].native.o{{$}} |
| 33 | + |
| 34 | +/// Linked ELF. |
| 35 | +// CHECK-DAG: {{^}}a.out{{$}} |
| 36 | + |
| 37 | +/// --save-temps incremental files for a.out. |
| 38 | +// CHECK-DAG: {{^}}a.out.lto.dtlto.o{{$}} |
| 39 | +// CHECK-DAG: {{^}}a.out.0.0.preopt.bc{{$}} |
| 40 | +// CHECK-DAG: {{^}}a.out.0.2.internalize.bc{{$}} |
| 41 | +// CHECK-DAG: {{^}}a.out.index.bc{{$}} |
| 42 | +// CHECK-DAG: {{^}}a.out.index.dot{{$}} |
| 43 | +// CHECK-DAG: {{^}}a.out.resolution.txt{{$}} |
48 | 44 |
|
49 | 45 | int _start() { return 0; } |
0 commit comments