1 // Unsupported on AIX because we don't support the requisite "__clangast"
2 // section in XCOFF yet.
3 // UNSUPPORTED: target={{.*}}-aix{{.*}}
9 // ---------------------------------------------------------------------
10 // Relative PCH, same directory.
11 // ---------------------------------------------------------------------
13 // RUN: %clang_cc1 -fmodule-format=obj -emit-pch \
14 // RUN: -triple %itanium_abi_triple \
15 // RUN: -o prefix.pch %S/debug-info-limited-struct.h
17 // RUN: %clang_cc1 -debug-info-kind=standalone \
18 // RUN: -dwarf-ext-refs -fmodule-format=obj \
19 // RUN: -triple %itanium_abi_triple \
20 // RUN: -include-pch prefix.pch %s -emit-llvm -o %t.nodir.ll %s
21 // RUN: cat %t.nodir.ll | FileCheck %s --check-prefix=CHECK-REL-NODIR
24 // CHECK-REL-NODIR: !DICompileUnit
25 // CHECK-REL-NODIR-SAME: file: ![[C:[0-9]+]]
26 // CHECK-REL-NODIR-NOT: dwoId
27 // CHECK-REL-NODIR: ![[C]] = !DIFile({{.*}}directory: "[[DIR:.*]]"
28 // CHECK-REL-NODIR: !DICompileUnit(
29 // CHECK-REL-NODIR-SAME: file: ![[PCH:[0-9]+]]
30 // CHECK-REL-NODIR-SAME: splitDebugFilename: "prefix.pch"
31 // CHECK-REL-NODIR: ![[PCH]] = !DIFile({{.*}}directory: "[[DIR]]
33 // ---------------------------------------------------------------------
34 // Relative PCH in a subdirectory.
35 // ---------------------------------------------------------------------
38 // RUN: %clang_cc1 -fmodule-format=obj -emit-pch \
39 // RUN: -triple %itanium_abi_triple \
40 // RUN: -o pchdir/prefix.pch %S/debug-info-limited-struct.h
42 // RUN: %clang_cc1 -debug-info-kind=standalone \
43 // RUN: -dwarf-ext-refs -fmodule-format=obj \
44 // RUN: -triple %itanium_abi_triple \
45 // RUN: -include-pch pchdir/prefix.pch %s -emit-llvm -o %t.rel.ll %s
46 // RUN: cat %t.rel.ll | FileCheck %s --check-prefix=CHECK-REL
48 // CHECK-REL: !DICompileUnit
49 // CHECK-REL-SAME: file: ![[C:[0-9]+]]
50 // CHECK-REL-NOT: dwoId
51 // CHECK-REL: ![[C]] = !DIFile({{.*}}directory: "[[DIR:.*]]"
52 // CHECK-REL: !DICompileUnit(
53 // CHECK-REL-SAME: file: ![[PCH:[0-9]+]]
54 // CHECK-REL-SAME: splitDebugFilename: "pchdir{{.*}}prefix.pch"
55 // CHECK-REL: ![[PCH]] = !DIFile({{.*}}directory: "[[DIR]]"
57 // ---------------------------------------------------------------------
59 // ---------------------------------------------------------------------
61 // RUN: %clang_cc1 -fmodule-format=obj -emit-pch \
62 // RUN: -triple %itanium_abi_triple \
63 // RUN: -o %t/prefix.pch %S/debug-info-limited-struct.h
65 // RUN: %clang_cc1 -debug-info-kind=standalone \
66 // RUN: -dwarf-ext-refs -fmodule-format=obj \
67 // RUN: -triple %itanium_abi_triple \
68 // RUN: -include-pch %t/prefix.pch %s -emit-llvm -o %t.abs.ll %s
69 // RUN: cat %t.abs.ll | FileCheck %s --check-prefix=CHECK-ABS
71 // CHECK-ABS: !DICompileUnit
72 // CHECK-ABS-SAME: file: ![[C:[0-9]+]]
73 // CHECK-ABS-NOT: dwoId
74 // CHECK-ABS: ![[C]] = !DIFile({{.*}}directory: "[[DIR:.*]]"
75 // CHECK-ABS: !DICompileUnit(
76 // CHECK-ABS-SAME: file: ![[PCH:[0-9]+]]
77 // CHECK-ABS-SAME: splitDebugFilename: "prefix.pch"
78 // CHECK-ABS: ![[PCH]] = !DIFile({{.*}}directory: "[[DIR]]