Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Dwarf2Reader ¶
type Dwarf2Reader struct {
// contains filtered or unexported fields
}
Dwarf2Reader parses and presents DWARF loclist information for DWARF versions 2 through 4.
func NewDwarf2Reader ¶
func NewDwarf2Reader(data []byte, ptrSz int) *Dwarf2Reader
NewDwarf2Reader returns an initialized loclist Reader for DWARF versions 2 through 4.
func (*Dwarf2Reader) Empty ¶
func (rdr *Dwarf2Reader) Empty() bool
Empty returns true if this reader has no data.
func (*Dwarf2Reader) Next ¶
func (rdr *Dwarf2Reader) Next(e *Entry) bool
Next advances the reader to the next loclist entry, returning the entry and true if successful, or nil, false if not.
func (*Dwarf2Reader) Seek ¶
func (rdr *Dwarf2Reader) Seek(off int)
Seek moves the data pointer to the specified offset.
type Dwarf5Reader ¶
type Dwarf5Reader struct {
// contains filtered or unexported fields
}
Dwarf5Reader parses and presents DWARF loclist information for DWARF version 5 and later. See DWARFv5 section 7.29 page 243 and following.
func NewDwarf5Reader ¶
func NewDwarf5Reader(data []byte) *Dwarf5Reader
func (*Dwarf5Reader) Empty ¶
func (rdr *Dwarf5Reader) Empty() bool
func (*Dwarf5Reader) Enumerate ¶
func (rdr *Dwarf5Reader) Enumerate(off int64, staticBase uint64, debugAddr *godwarf.DebugAddr) ([]Entry, error)
Enumerate walks through all of the location list entries for a given variable in a given function and enumerates them, returning to the client. Note that this function doesn't exist in the delve source; it was written here so as to be able to do something similar to what's done with DWARF 2 location lists. Here off is the offset within the .debug_loclists section containing the start of the entries for the function in question, staticBase is the start-of-text address for the executable, and debugAddr encapsulates the portion of the .debug_addr section containing entries for the current compilation unit.
type Entry ¶
Entry represents a single entry in the loclist section.
func (*Entry) BaseAddressSelection ¶
BaseAddressSelection returns true if entry.highpc should be used as the base address for subsequent entries.