Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / lld / COFF / PDB.h
blob991805cc95b38131f0dd26bf727a2ff0a25464e0
1 //===- PDB.h ----------------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
9 #ifndef LLD_COFF_PDB_H
10 #define LLD_COFF_PDB_H
12 #include "llvm/ADT/ArrayRef.h"
13 #include "llvm/ADT/StringRef.h"
14 #include <optional>
16 namespace llvm::codeview {
17 union DebugInfo;
20 namespace lld {
21 class Timer;
23 namespace coff {
24 class SectionChunk;
25 class COFFLinkerContext;
27 void createPDB(COFFLinkerContext &ctx, llvm::ArrayRef<uint8_t> sectionTable,
28 llvm::codeview::DebugInfo *buildId);
30 std::optional<std::pair<llvm::StringRef, uint32_t>>
31 getFileLineCodeView(const SectionChunk *c, uint32_t addr);
33 } // namespace coff
34 } // namespace lld
36 #endif