ssadump(1)

a tool for displaying and interpreting the SSA form of Go programs

Section 1 golang-golang-x-tools bookworm source

Description

SSADUMP

NAME

ssadump - a tool for displaying and interpreting the SSA form of Go programs

SYNOPSIS

ssadump [flags] args ...

DESCRIPTION

SSA builder and interpreter.

When -run is specified, ssadump will find the first package that defines a main function and run it in the interpreter. If none is found, the tests of each package will be run instead.

OPTIONS

-build

Options controlling the SSA builder. The value is a sequence of zero or more of these letters:

C

perform sanity [C]hecking of the SSA form.

D

include [D]ebug info for every function.

P

log [P]ackage inventory.

F

log [F]unction SSA code.

S

log [S]ource locations as SSA builder progresses.

G

use binary object files from gc to provide imports (no code).

L

build distinct packages seria[L]ly instead of in parallel.

N

build [N]aive SSA form: don’t replace local loads/stores with registers.

-cpuprofile

write cpu profile to file

-interp

Options controlling the SSA test interpreter. The value is a sequence of zero or more more of these letters:

R

disable [R]ecover() from panic; show interpreter crash instead.

T

[T]race execution of the program. Best for single-threaded programs!

-run

Invokes the SSA interpreter on the program.

EXAMPLES

Quickly dump SSA form of a single package:

ssadump -build=FPG hello.go

Interpret a program, with tracing:

ssadump -run -interp=T hello.go

Interpret the unicode package’s tests, verbosely:

ssadump -run unicode -- -test.v

AUTHOR

This manual page was written by Michael Stapelberg <stapelberg@debian.org>, for the Debian project (and may be used by others).