struct DWARFVerifier::DieRangeInfo
Declaration
struct DWARFVerifier::DieRangeInfo { /* full declaration omitted */ };
Description
A class that keeps the address range information for a single DIE.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:38
Member Variables
- public llvm::DWARFDie Die
- public std::vector<DWARFAddressRange> Ranges
- Sorted DWARFAddressRanges.
- public std::set<DieRangeInfo> Children
- Sorted DWARFAddressRangeInfo.
Method Overview
- public DieRangeInfo()
- public DieRangeInfo(llvm::DWARFDie Die)
- public DieRangeInfo(std::vector<DWARFAddressRange> Ranges)
- public bool contains(const llvm::DWARFVerifier::DieRangeInfo & RHS) const
- public Optional<llvm::DWARFAddressRange> insert(const llvm::DWARFAddressRange & R)
- public llvm::DWARFVerifier::DieRangeInfo::die_range_info_iterator insert(const llvm::DWARFVerifier::DieRangeInfo & RI)
- public bool intersects(const llvm::DWARFVerifier::DieRangeInfo & RHS) const
Methods
¶DieRangeInfo()
DieRangeInfo()
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:47
¶DieRangeInfo(llvm::DWARFDie Die)
DieRangeInfo(llvm::DWARFDie Die)
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:48
Parameters
- llvm::DWARFDie Die
¶DieRangeInfo(
std::vector<DWARFAddressRange> Ranges)
DieRangeInfo(
std::vector<DWARFAddressRange> Ranges)
Description
Used for unit testing.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:51
Parameters
- std::vector<DWARFAddressRange> Ranges
¶bool contains(
const llvm::DWARFVerifier::DieRangeInfo& RHS)
const
bool contains(
const llvm::DWARFVerifier::DieRangeInfo& RHS)
const
Description
Return true if ranges in this object contains all ranges within RHS.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:73
Parameters
- const llvm::DWARFVerifier::DieRangeInfo& RHS
¶Optional<llvm::DWARFAddressRange> insert(
const llvm::DWARFAddressRange& R)
Optional<llvm::DWARFAddressRange> insert(
const llvm::DWARFAddressRange& R)
Description
Inserts the address range. If the range overlaps with an existing range, the range that it overlaps with will be returned and the two address ranges will be unioned together in "Ranges". This is used for finding overlapping ranges in the DW_AT_ranges attribute of a DIE. It is also used as a set of address ranges that children address ranges must all be contained in.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:63
Parameters
- const llvm::DWARFAddressRange& R
¶llvm::DWARFVerifier::DieRangeInfo::
die_range_info_iterator
insert(
const llvm::DWARFVerifier::DieRangeInfo&
RI)
llvm::DWARFVerifier::DieRangeInfo::
die_range_info_iterator
insert(
const llvm::DWARFVerifier::DieRangeInfo&
RI)
Description
Inserts the address range info. If any of its ranges overlaps with a range in an existing range info, the range info is *not* added and an iterator to the overlapping range info. This is used for finding overlapping children of the same DIE.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:70
Parameters
- const llvm::DWARFVerifier::DieRangeInfo& RI
¶bool intersects(
const llvm::DWARFVerifier::DieRangeInfo& RHS)
const
bool intersects(
const llvm::DWARFVerifier::DieRangeInfo& RHS)
const
Description
Return true if any range in this object intersects with any range in RHS.
Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:77
Parameters
- const llvm::DWARFVerifier::DieRangeInfo& RHS