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 llvm::DWARFVerifier::DieRangeInfo::address_range_iterator findRange(const llvm::DWARFAddressRange & R) const
  • public llvm::DWARFVerifier::DieRangeInfo::address_range_iterator 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()

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:47

DieRangeInfo(llvm::DWARFDie Die)

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:48

Parameters

llvm::DWARFDie Die

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

Description

Return true if ranges in this object contains all ranges within RHS.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:83

Parameters

const llvm::DWARFVerifier::DieRangeInfo& RHS

llvm::DWARFVerifier::DieRangeInfo::
    address_range_iterator
    findRange(
        const llvm::DWARFAddressRange& R) const

Description

Finds an address range in the sorted vector of ranges.

Declared at: llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h:66

Parameters

const llvm::DWARFAddressRange& R

llvm::DWARFVerifier::DieRangeInfo::
    address_range_iterator
    insert(const llvm::DWARFAddressRange& R)

Description

Inserts the address range. If the range overlaps with an existing range, the range is *not* added and an iterator to the overlapping range is returned. This is used for finding overlapping ranges within the same DIE.

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)

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:80

Parameters

const llvm::DWARFVerifier::DieRangeInfo& RI

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:87

Parameters

const llvm::DWARFVerifier::DieRangeInfo& RHS