From fd095936673dcb53b96b825d95c1e83adde3ce15 Mon Sep 17 00:00:00 2001 From: Than McIntosh Date: Thu, 29 Apr 2021 14:52:24 -0400 Subject: [PATCH] cmd/compile: minor doc enhancements Add a little more detail to the ssa README relating to GOSSAFUNC. Update the -d=ssa help section to give a little more detail on what to expect with applying the /debug=X qualifier to a phase. Change-Id: I7027735f1f2955dbb5b9be36d9a648e8dc655048 Reviewed-on: https://go-review.googlesource.com/c/go/+/315229 Trust: Than McIntosh Run-TryBot: Than McIntosh TryBot-Result: Go Bot Reviewed-by: David Chase --- src/cmd/compile/internal/ssa/README.md | 13 +++++++++++++ src/cmd/compile/internal/ssa/compile.go | 5 +++++ 2 files changed, 18 insertions(+) diff --git a/src/cmd/compile/internal/ssa/README.md b/src/cmd/compile/internal/ssa/README.md index 4483c2c85f..833bf1ddc9 100644 --- a/src/cmd/compile/internal/ssa/README.md +++ b/src/cmd/compile/internal/ssa/README.md @@ -184,6 +184,19 @@ compile passes, making it easy to see what each pass does to a particular program. You can also click on values and blocks to highlight them, to help follow the control flow and values. +The value specified in GOSSAFUNC can also be a package-qualified function +name, e.g. + + GOSSAFUNC=blah.Foo go build + +This will match any function named "Foo" within a package whose final +suffix is "blah" (e.g. something/blah.Foo, anotherthing/extra/blah.Foo). + +If non-HTML dumps are needed, append a "+" to the GOSSAFUNC value +and dumps will be written to stdout: + + GOSSAFUNC=Bar+ go build + diff --git a/src/cmd/compile/internal/ssa/compile.go b/src/cmd/compile/internal/ssa/compile.go index 8aae04f2ec..cd8eba405d 100644 --- a/src/cmd/compile/internal/ssa/compile.go +++ b/src/cmd/compile/internal/ssa/compile.go @@ -297,6 +297,11 @@ enables time reporting for all phases -d=ssa/prove/debug=2 sets debugging level to 2 in the prove pass +Be aware that when "/debug=X" is applied to a pass, some passes +will emit debug output for all functions, and other passes will +only emit debug output for functions that match the current +GOSSAFUNC value. + Multiple flags can be passed at once, by separating them with commas. For example: