LLVM  10.0.0svn
DIASectionContrib.h
Go to the documentation of this file.
1 //===- DIASectionContrib.h - DIA Impl. of IPDBSectionContrib ------ 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 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_DEBUGINFO_PDB_DIA_DIASECTIONCONTRIB_H
10 #define LLVM_DEBUGINFO_PDB_DIA_DIASECTIONCONTRIB_H
11 
12 #include "DIASupport.h"
14 
15 namespace llvm {
16 namespace pdb {
17 class DIASession;
18 
20 public:
21  explicit DIASectionContrib(const DIASession &PDBSession,
22  CComPtr<IDiaSectionContrib> DiaSection);
23 
24  std::unique_ptr<PDBSymbolCompiland> getCompiland() const override;
25  uint32_t getAddressSection() const override;
26  uint32_t getAddressOffset() const override;
27  uint32_t getRelativeVirtualAddress() const override;
28  uint64_t getVirtualAddress() const override;
29  uint32_t getLength() const override;
30  bool isNotPaged() const override;
31  bool hasCode() const override;
32  bool hasCode16Bit() const override;
33  bool hasInitializedData() const override;
34  bool hasUninitializedData() const override;
35  bool isRemoved() const override;
36  bool hasComdat() const override;
37  bool isDiscardable() const override;
38  bool isNotCached() const override;
39  bool isShared() const override;
40  bool isExecutable() const override;
41  bool isReadable() const override;
42  bool isWritable() const override;
43  uint32_t getDataCrc32() const override;
44  uint32_t getRelocationsCrc32() const override;
45  uint32_t getCompilandId() const override;
46 
47 private:
48  const DIASession &Session;
49  CComPtr<IDiaSectionContrib> Section;
50 };
51 } // namespace pdb
52 } // namespace llvm
53 
54 #endif // LLVM_DEBUGINFO_PDB_DIA_DIASECTIONCONTRIB_H
bool hasCode() const override
This class represents lattice values for constants.
Definition: AllocatorList.h:23
uint32_t getRelocationsCrc32() const override
bool hasCode16Bit() const override
bool isExecutable() const override
bool hasComdat() const override
bool isRemoved() const override
bool isShared() const override
IPDBSectionContrib defines an interface used to represent section contributions whose information are...
DIASectionContrib(const DIASession &PDBSession, CComPtr< IDiaSectionContrib > DiaSection)
bool isDiscardable() const override
bool isNotCached() const override
bool hasUninitializedData() const override
uint32_t getRelativeVirtualAddress() const override
std::unique_ptr< PDBSymbolCompiland > getCompiland() const override
bool isNotPaged() const override
bool isWritable() const override
bool isReadable() const override
uint32_t getLength() const override
uint64_t getVirtualAddress() const override
bool hasInitializedData() const override
uint32_t getCompilandId() const override
uint32_t getAddressOffset() const override
uint32_t getAddressSection() const override
uint32_t getDataCrc32() const override