LLVM 20.0.0git
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
15namespace llvm {
16namespace pdb {
17class DIASession;
18
20public:
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
47private:
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 isShared() const override
uint32_t getLength() const override
bool isReadable() const override
bool isNotPaged() const override
uint32_t getCompilandId() const override
bool hasInitializedData() const override
uint64_t getVirtualAddress() const override
bool hasUninitializedData() const override
uint32_t getAddressOffset() const override
bool isRemoved() const override
uint32_t getRelocationsCrc32() const override
bool isExecutable() const override
uint32_t getDataCrc32() const override
uint32_t getAddressSection() const override
uint32_t getRelativeVirtualAddress() const override
bool isDiscardable() const override
bool hasCode16Bit() const override
bool isNotCached() const override
bool hasComdat() const override
std::unique_ptr< PDBSymbolCompiland > getCompiland() const override
bool isWritable() const override
bool hasCode() const override
IPDBSectionContrib defines an interface used to represent section contributions whose information are...
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18