package objfile
import "cmd/internal/objfile"
Package objfile implements portable access to OS-specific executable files.
Index ¶
- type Entry
- func (e *Entry) DWARF() (*dwarf.Data, error)
- func (e *Entry) GOARCH() string
- func (e *Entry) LoadAddress() (uint64, error)
- func (e *Entry) Name() string
- func (e *Entry) PCLineTable() (Liner, error)
- func (e *Entry) Symbols() ([]Sym, error)
- func (e *Entry) Text() (uint64, []byte, error)
- type File
- func Open(name string) (*File, error)
- func (f *File) Close() error
- func (f *File) DWARF() (*dwarf.Data, error)
- func (f *File) Entries() []*Entry
- func (f *File) GOARCH() string
- func (f *File) LoadAddress() (uint64, error)
- func (f *File) PCLineTable() (Liner, error)
- func (f *File) Symbols() ([]Sym, error)
- func (f *File) Text() (uint64, []byte, error)
- type Liner
- type Reloc
- type RelocStringer
- type Sym
Types ¶
type Entry ¶
type Entry struct {
// contains filtered or unexported fields
}
func (*Entry) DWARF ¶
DWARF returns DWARF debug data for the file, if any. This is for cmd/pprof to locate cgo functions.
func (*Entry) GOARCH ¶
func (*Entry) LoadAddress ¶
LoadAddress returns the expected load address of the file. This differs from the actual load address for a position-independent executable.
func (*Entry) Name ¶
func (*Entry) PCLineTable ¶
func (*Entry) Symbols ¶
func (*Entry) Text ¶
type File ¶
type File struct {
// contains filtered or unexported fields
}
A File is an opened executable file.
func Open ¶
Open opens the named file. The caller must call f.Close when the file is no longer needed.
func (*File) Close ¶
func (*File) DWARF ¶
func (*File) Entries ¶
func (*File) GOARCH ¶
func (*File) LoadAddress ¶
func (*File) PCLineTable ¶
func (*File) Symbols ¶
func (*File) Text ¶
type Liner ¶
type Liner interface { // Given a pc, returns the corresponding file, line, and function data. // If unknown, returns "",0,nil. PCToLine(uint64) (string, int, *gosym.Func) }
type Reloc ¶
type Reloc struct { Addr uint64 // Address of first byte that reloc applies to. Size uint64 // Number of bytes Stringer RelocStringer }
type RelocStringer ¶
type RelocStringer interface { // insnOffset is the offset of the instruction containing the relocation // from the start of the symbol containing the relocation. String(insnOffset uint64) string }
type Sym ¶
type Sym struct { Name string // symbol name Addr uint64 // virtual address of symbol Size int64 // size in bytes Code rune // nm code (T for text, D for data, and so on) Type string // XXX? Relocs []Reloc // in increasing Addr order }
A Sym is a symbol defined in an executable file.
Source Files ¶
elf.go goobj.go macho.go objfile.go pe.go plan9obj.go xcoff.go
- Version
- v1.24.0 (latest)
- Published
- Feb 10, 2025
- Platform
- linux/amd64
- Imports
- 20 packages
- Last checked
- 11 minutes ago –
Tools for package owners.