LLVM 20.0.0git
|
#include "llvm/DebugInfo/DWARF/DWARFAddressRange.h"
Public Member Functions | |
DWARFAddressRange ()=default | |
DWARFAddressRange (uint64_t LowPC, uint64_t HighPC, uint64_t SectionIndex=object::SectionedAddress::UndefSection) | |
Used for unit testing. | |
bool | valid () const |
Returns true if LowPC is smaller or equal to HighPC. | |
bool | intersects (const DWARFAddressRange &RHS) const |
Returns true if [LowPC, HighPC) intersects with [RHS.LowPC, RHS.HighPC). | |
bool | merge (const DWARFAddressRange &RHS) |
Union two address ranges if they intersect. | |
void | dump (raw_ostream &OS, uint32_t AddressSize, DIDumpOptions DumpOpts={}, const DWARFObject *Obj=nullptr) const |
Public Attributes | |
uint64_t | LowPC |
uint64_t | HighPC |
uint64_t | SectionIndex |
Definition at line 25 of file DWARFAddressRange.h.
|
default |
|
inline |
Used for unit testing.
Definition at line 33 of file DWARFAddressRange.h.
void DWARFAddressRange::dump | ( | raw_ostream & | OS, |
uint32_t | AddressSize, | ||
DIDumpOptions | DumpOpts = {} , |
||
const DWARFObject * | Obj = nullptr |
||
) | const |
Definition at line 16 of file DWARFAddressRange.cpp.
References llvm::DIDumpOptions::DisplayRawContents, llvm::DWARFFormValue::dumpAddress(), llvm::DWARFFormValue::dumpAddressSection(), HighPC, LowPC, OS, and SectionIndex.
Referenced by llvm::RangeListEntry::dump().
|
inline |
Returns true if [LowPC, HighPC) intersects with [RHS.LowPC, RHS.HighPC).
Definition at line 43 of file DWARFAddressRange.h.
References assert(), HighPC, LowPC, RHS, SectionIndex, and valid().
Referenced by merge().
|
inline |
Union two address ranges if they intersect.
This function will union two address ranges if they intersect by modifying this range to be the union of both ranges. If the two ranges don't intersect this range will be left alone.
RHS | Another address range to combine with. |
Definition at line 63 of file DWARFAddressRange.h.
References HighPC, intersects(), LowPC, and RHS.
|
inline |
Returns true if LowPC is smaller or equal to HighPC.
This accounts for dead-stripped ranges.
Definition at line 40 of file DWARFAddressRange.h.
Referenced by intersects().
uint64_t llvm::DWARFAddressRange::HighPC |
Definition at line 27 of file DWARFAddressRange.h.
Referenced by dump(), llvm::DWARFDebugRangeList::getAbsoluteRanges(), llvm::DWARFDebugRnglist::getAbsoluteRanges(), intersects(), merge(), and valid().
uint64_t llvm::DWARFAddressRange::LowPC |
Definition at line 26 of file DWARFAddressRange.h.
Referenced by dump(), llvm::DWARFDebugRangeList::getAbsoluteRanges(), llvm::DWARFDebugRnglist::getAbsoluteRanges(), intersects(), merge(), and valid().
uint64_t llvm::DWARFAddressRange::SectionIndex |
Definition at line 28 of file DWARFAddressRange.h.
Referenced by dump(), llvm::DWARFDebugRangeList::getAbsoluteRanges(), llvm::DWARFDebugRnglist::getAbsoluteRanges(), and intersects().