[Frontend] Remove unused includes (NFC) (#116927)
[llvm-project.git] / llvm / test / DebugInfo / precomp.test
blob2c3c8db6a86b3d25e28c8de5f43aa669a697fc46
2 RUN: rm -rf %t1/
3 RUN: mkdir %t1
4 RUN: obj2yaml %S/Inputs/precomp-a.obj > %t1/precomp-a.yaml
5 RUN: obj2yaml %S/Inputs/precomp.obj > %t1/precomp.yaml
6 RUN: yaml2obj %t1/precomp-a.yaml -o %t1/a.obj
7 RUN: yaml2obj %t1/precomp.yaml -o %t1/precomp.obj
8 RUN: llvm-readobj --codeview %t1/a.obj | FileCheck %s -check-prefix PRECOMP
9 RUN: llvm-readobj --codeview %t1/precomp.obj | FileCheck %s -check-prefix ENDPRECOMP
10 RUN: llvm-pdbutil dump -types %t1/a.obj | FileCheck %s -check-prefix PDB-PRECOMP
11 RUN: llvm-pdbutil dump -types %t1/precomp.obj | FileCheck %s -check-prefix PDB-ENDPRECOMP
13 ENDPRECOMP:      CodeViewTypes [
14 ENDPRECOMP-NEXT:   Section: .debug$P (3)
15 ENDPRECOMP:        EndPrecomp (0x1407) {
16 ENDPRECOMP-NEXT:     TypeLeafKind: LF_ENDPRECOMP (0x14)
17 ENDPRECOMP-NEXT:     Signature: 0x1116980E
18 ENDPRECOMP-NEXT:   }
20 PRECOMP:      CodeViewTypes [
21 PRECOMP-NEXT:   Section: .debug$T (3)
22 PRECOMP-NEXT:   Magic: 0x4
23 PRECOMP-NEXT:   Precomp (0x1000) {
24 PRECOMP-NEXT:     TypeLeafKind: LF_PRECOMP (0x1509)
25 PRECOMP-NEXT:     StartIndex: 0x1000
26 PRECOMP-NEXT:     Count: 0x407
27 PRECOMP-NEXT:     Signature: 0x1116980E
29 PDB-PRECOMP:                              Types (.debug$T)
30 PDB-PRECOMP-NEXT: ============================================================
31 PDB-PRECOMP-NEXT: Showing 0 records
32 PDB-PRECOMP-NEXT: 0x1000 | LF_PRECOMP [size = 60] start index = 0x1000, types count = 0x407, signature = 0x1116980E, precomp path = f:\svn\lld\test\coff\precomp\precomp.obj
34 PDB-ENDPRECOMP:                     Precompiled Types (.debug$P)
35 PDB-ENDPRECOMP-NEXT: ============================================================
36 PDB-ENDPRECOMP-NEXT: Showing 0 records
37 PDB-ENDPRECOMP:      0x1407 | LF_ENDPRECOMP [size = 8] signature = 0x1116980E
39 # // precomp.h
40 # #pragma once
41 # int Function(char A);
43 # // precomp.cpp
44 # // cl.exe precomp.cpp /Z7 /Ycprecomp.h /c
45 # #include "precomp.h"
47 # // a.cpp
48 # #include "precomp.h"
49 # int main(void) {
50 #   Function('a');
51 #   return 0;
52 # }
54 # // cl.exe a.cpp /Z7 /Yuprecomp.h /c
56 # // obj2yaml precomp.obj >precomp-precomp.yaml
57 # // obj2yaml a.obj >precomp-a.yaml