9#ifndef LLVM_DEBUGINFO_GSYM_INLINEINFO_H
10#define LLVM_DEBUGINFO_GSYM_INLINEINFO_H
183 return LHS.Name ==
RHS.Name &&
LHS.CallFile ==
RHS.CallFile &&
184 LHS.CallLine ==
RHS.CallLine &&
LHS.Ranges ==
RHS.Ranges &&
185 LHS.Children ==
RHS.Children;
The AddressRanges class helps normalize address range collections.
Lightweight error class with error context and mandatory checking.
Tagged union holding either a T or a Error.
A simplified binary data writer class that doesn't require targets, target definitions,...
GsymReader is used to read GSYM data from a file or buffer.
This class implements an extremely fast bulk output stream that can only output to a stream.
uint64_t gsym_strp_t
The type of string offset used in the code.
LLVM_ABI raw_ostream & operator<<(raw_ostream &OS, const CallSiteInfo &CSI)
bool operator==(const FunctionInfo &LHS, const FunctionInfo &RHS)
std::vector< SourceLocation > SourceLocations
This is an optimization pass for GlobalISel generic memory operations.
FunctionAddr VTableAddr uintptr_t uintptr_t Data
Inline information stores the name of the inline function along with an array of address ranges.
gsym_strp_t Name
String table offset in the string table.
LLVM_ABI bool operator<(const InlineInfo &RHS) const
Compare InlineInfo objects.
std::vector< InlineInfo > Children
static LLVM_ABI llvm::Expected< InlineInfo > decode(GsymDataExtractor &Data, uint64_t BaseAddr)
Decode an InlineInfo object from a binary data stream.
std::vector< const InlineInfo * > InlineArray
LLVM_ABI std::optional< InlineArray > getInlineStack(uint64_t Addr) const
Lookup an address in the InlineInfo object.
uint32_t CallFile
1 based file index in the file table.
LLVM_ABI llvm::Error encode(FileWriter &O, uint64_t BaseAddr) const
Encode this InlineInfo object into FileWriter stream.
static LLVM_ABI llvm::Error lookup(const GsymReader &GR, GsymDataExtractor &Data, uint64_t BaseAddr, uint64_t Addr, SourceLocations &SrcLocs)
Lookup a single address within the inline info data.
uint32_t CallLine
Source line number.