diff options
| author | Cherry Zhang <cherryyz@google.com> | 2020-05-21 14:08:32 -0400 |
|---|---|---|
| committer | Cherry Zhang <cherryyz@google.com> | 2020-05-21 14:08:32 -0400 |
| commit | 6097f7cf7a9a9bf877f6f49112ffcc2d0f0e7e75 (patch) | |
| tree | c42265e0cfb4ac2bbcf4a9ed9432748997d2362a /src/cmd/internal | |
| parent | 8e4ab9cb4c28649be36f82a02d04eb1cb31d02c9 (diff) | |
| parent | c847589ad06a1acfcceaac7b230c0d5a826caab8 (diff) | |
| download | go-6097f7cf7a9a9bf877f6f49112ffcc2d0f0e7e75.tar.xz | |
[dev.link] all: merge branch 'master' into dev.link
Change-Id: I85b653b621ad8cb2ef27886210ea2c4b7409b60d
Diffstat (limited to 'src/cmd/internal')
| -rw-r--r-- | src/cmd/internal/obj/objfile.go | 8 | ||||
| -rw-r--r-- | src/cmd/internal/objabi/util.go | 11 |
2 files changed, 12 insertions, 7 deletions
diff --git a/src/cmd/internal/obj/objfile.go b/src/cmd/internal/obj/objfile.go index 6701b9bfba..5e7018eb6e 100644 --- a/src/cmd/internal/obj/objfile.go +++ b/src/cmd/internal/obj/objfile.go @@ -425,6 +425,14 @@ func (ft *DwarfFixupTable) SetPrecursorFunc(s *LSym, fn interface{}) { absfn.Type = objabi.SDWARFINFO ft.ctxt.Data = append(ft.ctxt.Data, absfn) + // In the case of "late" inlining (inlines that happen during + // wrapper generation as opposed to the main inlining phase) it's + // possible that we didn't cache the abstract function sym for the + // text symbol -- do so now if needed. See issue 38068. + if s.Func != nil && s.Func.dwarfAbsFnSym == nil { + s.Func.dwarfAbsFnSym = absfn + } + ft.precursor[s] = fnState{precursor: fn, absfn: absfn} } diff --git a/src/cmd/internal/objabi/util.go b/src/cmd/internal/objabi/util.go index 72dd5856f8..2f94ec6a67 100644 --- a/src/cmd/internal/objabi/util.go +++ b/src/cmd/internal/objabi/util.go @@ -37,16 +37,13 @@ var ( const ( ElfRelocOffset = 256 - MachoRelocOffset = 2048 // reserve enough space for ELF relocations + MachoRelocOffset = 2048 // reserve enough space for ELF relocations + Go115AMD64 = "alignedjumps" // Should be "alignedjumps" or "normaljumps"; this replaces environment variable introduced in CL 219357. ) +// TODO(1.16): assuming no issues in 1.15 release, remove this and related constant. func goamd64() string { - switch v := envOr("GOAMD64", defaultGOAMD64); v { - case "normaljumps", "alignedjumps": - return v - } - log.Fatalf("Invalid GOAMD64 value. Must be normaljumps or alignedjumps.") - panic("unreachable") + return Go115AMD64 } func goarm() int { |
