1
0
mirror of https://github.com/golang/go synced 2024-11-18 00:44:47 -07:00

cmd/link: print symbol versions in stack bound check

When the stack bound check fails, print the call chain with
symbol versions (along with the names). Now that we have ABI
wrappers and wrappers do consume stack space, it is clearer to
distinguish the wrappers vs. the underlying functions.

Change-Id: Id1d922e3e7934b31317f233aff3d9667b6ac90c8
Reviewed-on: https://go-review.googlesource.com/c/go/+/302869
Trust: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Than McIntosh <thanm@google.com>
This commit is contained in:
Cherry Zhang 2021-03-17 23:55:07 -04:00
parent 9de49ae01a
commit db4adb1a9b

View File

@ -2416,7 +2416,7 @@ func (sc *stkChk) print(ch *chain, limit int) {
ctxt := sc.ctxt
var name string
if ch.sym != 0 {
name = ldr.SymName(ch.sym)
name = fmt.Sprintf("%s<%d>", ldr.SymName(ch.sym), ldr.SymVersion(ch.sym))
if ldr.IsNoSplit(ch.sym) {
name += " (nosplit)"
}