]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1.10] runtime: identify special functions by flag instead of address
authorKeith Randall <khr@golang.org>
Wed, 14 Mar 2018 22:21:37 +0000 (15:21 -0700)
committerAndrew Bonventre <andybons@golang.org>
Thu, 29 Mar 2018 06:09:45 +0000 (06:09 +0000)
commitff5bff8a5fb4d81bf18f2cd23bfef30d5413e4e8
treeec655604b2c80401575dbb364213f69f6f38905b
parent76b63aaab90c0b8163c99598ef218451b5a82ec8
[release-branch.go1.10] runtime: identify special functions by flag instead of address

When there are plugins, there may not be a unique copy of runtime
functions like goexit, mcall, etc.  So identifying them by entry
address is problematic.  Instead, keep track of each special function
using a field in the symbol table.  That way, multiple copies of
the same runtime function will be treated identically.

Fixes #24351
Fixes #23133

Change-Id: Iea3232df8a6af68509769d9ca618f530cc0f84fd
Reviewed-on: https://go-review.googlesource.com/100739
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Reviewed-on: https://go-review.googlesource.com/102793
Run-TryBot: Andrew Bonventre <andybons@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
misc/cgo/testplugin/src/issue24351/main.go [new file with mode: 0644]
misc/cgo/testplugin/src/issue24351/plugin.go [new file with mode: 0644]
misc/cgo/testplugin/test.bash
src/cmd/internal/objabi/funcid.go [new file with mode: 0644]
src/cmd/link/internal/ld/pcln.go
src/runtime/os_windows.go
src/runtime/proc.go
src/runtime/runtime2.go
src/runtime/stack.go
src/runtime/symtab.go
src/runtime/traceback.go