9#ifndef LLVM_DEBUGINFO_GSYM_INLINEINFO_H
10#define LLVM_DEBUGINFO_GSYM_INLINEINFO_H
181 return LHS.Name ==
RHS.Name &&
LHS.CallFile ==
RHS.CallFile &&
182 LHS.CallLine ==
RHS.CallLine &&
LHS.Ranges ==
RHS.Ranges &&
183 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.
raw_ostream & operator<<(raw_ostream &OS, const FunctionInfo &R)
std::vector< SourceLocation > SourceLocations
This is an optimization pass for GlobalISel generic memory operations.
bool operator==(const AddressRangeValuePair &LHS, const AddressRangeValuePair &RHS)
Inline information stores the name of the inline function along with an array of address ranges.
bool operator<(const InlineInfo &RHS) const
Compare InlineInfo objects.
std::vector< InlineInfo > Children
std::vector< const InlineInfo * > InlineArray
std::optional< InlineArray > getInlineStack(uint64_t Addr) const
Lookup an address in the InlineInfo object.
static llvm::Error lookup(const GsymReader &GR, DataExtractor &Data, uint64_t BaseAddr, uint64_t Addr, SourceLocations &SrcLocs)
Lookup a single address within the inline info data.
uint32_t CallFile
1 based file index in the file table.
llvm::Error encode(FileWriter &O, uint64_t BaseAddr) const
Encode this InlineInfo object into FileWriter stream.
uint32_t CallLine
Source line number.
static llvm::Expected< InlineInfo > decode(DataExtractor &Data, uint64_t BaseAddr)
Decode an InlineInfo object from a binary data stream.
uint32_t Name
String table offset in the string table.