aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorliu-xuewen <liiuxuewen@gmail.com>2020-07-13 09:15:38 +0000
committerKeith Randall <khr@golang.org>2020-08-17 21:05:19 +0000
commitba97be4b58241bebbc4ff70574bd82152ab19ffe (patch)
treed31e5c470ecd73f487acbf3f5ef5ff9694371e8b /src
parent17553c6e7154deab8501595f4fa387c0b718337a (diff)
downloadgo-ba97be4b58241bebbc4ff70574bd82152ab19ffe.tar.xz
runtime: remove tracebackinit and unused skipPC
CL [152537](https://go-review.googlesource.com/c/go/+/152537/) changed the way inlined frames are represented in tracebacks to no longer use skipPC Change-Id: I42386fdcc5cf72f3c122e789b6af9cbd0c6bed4b GitHub-Last-Rev: 79c26dcd532907eda4ffc30951845c1c01243501 GitHub-Pull-Request: golang/go#39829 Reviewed-on: https://go-review.googlesource.com/c/go/+/239701 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
Diffstat (limited to 'src')
-rw-r--r--src/runtime/asm.s21
-rw-r--r--src/runtime/proc.go1
-rw-r--r--src/runtime/traceback.go13
3 files changed, 0 insertions, 35 deletions
diff --git a/src/runtime/asm.s b/src/runtime/asm.s
index 95a3424de2..27d8df9e06 100644
--- a/src/runtime/asm.s
+++ b/src/runtime/asm.s
@@ -11,24 +11,3 @@
DATA runtime·no_pointers_stackmap+0x00(SB)/4, $2
DATA runtime·no_pointers_stackmap+0x04(SB)/4, $0
GLOBL runtime·no_pointers_stackmap(SB),RODATA, $8
-
-// NaCl requires that these skips be verifiable machine code.
-#ifdef GOARCH_amd64
-#define SKIP4 BYTE $0x90; BYTE $0x90; BYTE $0x90; BYTE $0x90
-#endif
-#ifdef GOARCH_386
-#define SKIP4 BYTE $0x90; BYTE $0x90; BYTE $0x90; BYTE $0x90
-#endif
-#ifdef GOARCH_wasm
-#define SKIP4 UNDEF; UNDEF; UNDEF; UNDEF
-#endif
-#ifndef SKIP4
-#define SKIP4 WORD $0
-#endif
-
-#define SKIP16 SKIP4; SKIP4; SKIP4; SKIP4
-#define SKIP64 SKIP16; SKIP16; SKIP16; SKIP16
-
-// This function must be sizeofSkipFunction bytes.
-TEXT runtime·skipPleaseUseCallersFrames(SB),NOSPLIT,$0-0
- SKIP64; SKIP64; SKIP64; SKIP64
diff --git a/src/runtime/proc.go b/src/runtime/proc.go
index ed7e2128ae..9a358cd529 100644
--- a/src/runtime/proc.go
+++ b/src/runtime/proc.go
@@ -558,7 +558,6 @@ func schedinit() {
sched.maxmcount = 10000
- tracebackinit()
moduledataverify()
stackinit()
mallocinit()
diff --git a/src/runtime/traceback.go b/src/runtime/traceback.go
index 96e552524e..7850eceafa 100644
--- a/src/runtime/traceback.go
+++ b/src/runtime/traceback.go
@@ -36,16 +36,6 @@ import (
const usesLR = sys.MinFrameSize > 0
-var skipPC uintptr
-
-func tracebackinit() {
- // Go variable initialization happens late during runtime startup.
- // Instead of initializing the variables above in the declarations,
- // schedinit calls this function so that the variables are
- // initialized and available earlier in the startup sequence.
- skipPC = funcPC(skipPleaseUseCallersFrames)
-}
-
// Traceback over the deferred function calls.
// Report them like calls that have been invoked but not started executing yet.
func tracebackdefers(gp *g, callback func(*stkframe, unsafe.Pointer) bool, v unsafe.Pointer) {
@@ -83,9 +73,6 @@ func tracebackdefers(gp *g, callback func(*stkframe, unsafe.Pointer) bool, v uns
const sizeofSkipFunction = 256
-// This function is defined in asm.s to be sizeofSkipFunction bytes long.
-func skipPleaseUseCallersFrames()
-
// Generic traceback. Handles runtime stack prints (pcbuf == nil),
// the runtime.Callers function (pcbuf != nil), as well as the garbage
// collector (callback != nil). A little clunky to merge these, but avoids