LLVM  16.0.0git
NativeFunctionSymbol.h
Go to the documentation of this file.
1 //===- NativeFunctionSymbol.h - info about function symbols -----*- 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_NATIVE_NATIVEFUNCTIONSYMBOL_H
10 #define LLVM_DEBUGINFO_PDB_NATIVE_NATIVEFUNCTIONSYMBOL_H
11 
16 
17 namespace llvm {
18 class raw_ostream;
19 namespace pdb {
20 
21 class NativeSession;
22 
24 public:
27 
28  ~NativeFunctionSymbol() override;
29 
30  void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields,
31  PdbSymbolIdField RecurseIdFields) const override;
32 
33  uint32_t getAddressOffset() const override;
34  uint32_t getAddressSection() const override;
35  std::string getName() const override;
36  uint64_t getLength() const override;
37  uint32_t getRelativeVirtualAddress() const override;
38  uint64_t getVirtualAddress() const override;
39  std::unique_ptr<IPDBEnumSymbols>
40  findInlineFramesByVA(uint64_t VA) const override;
41 
42 protected:
45 };
46 
47 } // namespace pdb
48 } // namespace llvm
49 
50 #endif // LLVM_DEBUGINFO_PDB_NATIVE_NATIVEFUNCTIONSYMBOL_H
llvm::pdb::NativeFunctionSymbol::getAddressSection
uint32_t getAddressSection() const override
Definition: NativeFunctionSymbol.cpp:48
llvm
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
IPDBRawSymbol.h
SymbolRecord.h
llvm::pdb::NativeFunctionSymbol::getAddressOffset
uint32_t getAddressOffset() const override
Definition: NativeFunctionSymbol.cpp:44
llvm::pdb::NativeFunctionSymbol::NativeFunctionSymbol
NativeFunctionSymbol(NativeSession &Session, SymIndexId Id, const codeview::ProcSym &Sym, uint32_t RecordOffset)
Definition: NativeFunctionSymbol.cpp:25
llvm::raw_ostream
This class implements an extremely fast bulk output stream that can only output to a stream.
Definition: raw_ostream.h:53
llvm::pdb::NativeFunctionSymbol::getLength
uint64_t getLength() const override
Definition: NativeFunctionSymbol.cpp:53
PDBTypes.h
llvm::codeview::ProcSym
Definition: SymbolRecord.h:42
llvm::pdb::NativeFunctionSymbol::Sym
const codeview::ProcSym Sym
Definition: NativeFunctionSymbol.h:43
uint64_t
llvm::pdb::NativeFunctionSymbol::getRelativeVirtualAddress
uint32_t getRelativeVirtualAddress() const override
Definition: NativeFunctionSymbol.cpp:55
uint32_t
llvm::pdb::NativeFunctionSymbol::dump
void dump(raw_ostream &OS, int Indent, PdbSymbolIdField ShowIdFields, PdbSymbolIdField RecurseIdFields) const override
Definition: NativeFunctionSymbol.cpp:34
llvm::pdb::NativeFunctionSymbol::~NativeFunctionSymbol
~NativeFunctionSymbol() override
llvm::pdb::NativeFunctionSymbol::getName
std::string getName() const override
Definition: NativeFunctionSymbol.cpp:49
llvm::pdb::NativeFunctionSymbol
Definition: NativeFunctionSymbol.h:23
llvm::pdb::NativeFunctionSymbol::findInlineFramesByVA
std::unique_ptr< IPDBEnumSymbols > findInlineFramesByVA(uint64_t VA) const override
Definition: NativeFunctionSymbol.cpp:97
llvm::pdb::NativeFunctionSymbol::getVirtualAddress
uint64_t getVirtualAddress() const override
Definition: NativeFunctionSymbol.cpp:59
NativeRawSymbol.h
llvm::pdb::NativeSession
Definition: NativeSession.h:32
llvm::pdb::PdbSymbolIdField
PdbSymbolIdField
Definition: IPDBRawSymbol.h:24
llvm::pdb::NativeFunctionSymbol::RecordOffset
uint32_t RecordOffset
Definition: NativeFunctionSymbol.h:44
llvm::pdb::NativeRawSymbol::Session
NativeSession & Session
Definition: NativeRawSymbol.h:232
llvm::AMDGPU::VGPRIndexMode::Id
Id
Definition: SIDefines.h:241
llvm::pdb::NativeRawSymbol
Definition: NativeRawSymbol.h:21