]> Cypherpunks repositories - gostls13.git/commitdiff
debug/elf: load .debug_line section and pass to dwarf.New
authorAustin Clements <austin@google.com>
Wed, 4 Mar 2015 16:04:26 +0000 (11:04 -0500)
committerAustin Clements <austin@google.com>
Tue, 10 Mar 2015 02:32:25 +0000 (02:32 +0000)
Change-Id: Ia6f9bd77a3d4250339dcb054edc76942864dd358
Reviewed-on: https://go-review.googlesource.com/6781
Reviewed-by: Rob Pike <r@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/debug/elf/file.go

index 9f5d5527f361c51acda4f70e217d84ccc4b8a422..b2174d4277f23fd5fa2b6ec219691b4f98d586f0 100644 (file)
@@ -749,9 +749,9 @@ func (f *File) DWARF() (*dwarf.Data, error) {
        }
 
        // There are many other DWARF sections, but these
-       // are the required ones, and the debug/dwarf package
-       // does not use the others, so don't bother loading them.
-       var dat = map[string][]byte{"abbrev": nil, "info": nil, "str": nil}
+       // are the ones the debug/dwarf package uses.
+       // Don't bother loading others.
+       var dat = map[string][]byte{"abbrev": nil, "info": nil, "str": nil, "line": nil}
        for i, s := range f.Sections {
                if !strings.HasPrefix(s.Name, ".debug_") {
                        continue
@@ -766,7 +766,7 @@ func (f *File) DWARF() (*dwarf.Data, error) {
                dat[s.Name[7:]] = b
        }
 
-       d, err := dwarf.New(dat["abbrev"], nil, nil, dat["info"], nil, nil, nil, dat["str"])
+       d, err := dwarf.New(dat["abbrev"], nil, nil, dat["info"], dat["line"], nil, nil, dat["str"])
        if err != nil {
                return nil, err
        }