Commit e6d2544d authored by Alberto Donizetti's avatar Alberto Donizetti Committed by Daniel Martí

test/codegen: mention -all_codegen in the README

For performance reasons (avoiding costly cross-compilations) CL 177577
changed the codegen test harness to only run the tests for the
machine's GOARCH by default.

This change updates the codegen README accordingly, explaining what
all.bash does run by default and how to perform the tests for all
architectures.

Fixes #33924

Change-Id: I43328d878c3e449ebfda46f7e69963a44a511d40
Reviewed-on: https://go-review.googlesource.com/c/go/+/192619Reviewed-by: default avatarDaniel Martí <mvdan@mvdan.cc>
parent c51909e3
......@@ -9,17 +9,20 @@ compiler.
- Introduction
The test harness compiles Go code inside files in this directory and
then matches the generated assembly (the output of `go tool compile -S`)
against a set of regexps specified in comments that follow a special
syntax (described below). The test driver is implemented as a step of
the top-level test/run.go suite, called "asmcheck".
matches the generated assembly (the output of `go tool compile -S`)
against a set of regexps to be specified in comments that follow a
special syntax (described below). The test driver is implemented as a
step of the top-level test/run.go suite, called "asmcheck".
The codegen tests run during all.bash, but can also be run in
isolation by using
The codegen harness is part of the all.bash test suite, but for
performance reasons only the codegen tests for the host machine's
GOARCH are enabled by default. To perform comprehensive tests for all
the supported architectures, one can run the following command
$ ../bin/go run run.go -v codegen
$ ../bin/go run run.go -all_codegen -v codegen
in the top-level test directory.
in the top-level test directory. This is recommended after any change
that affect the compiler's code.
The test harness compiles the tests with the same go toolchain that is
used to run run.go. After writing tests for a newly added codegen
......@@ -94,6 +97,7 @@ For example:
verifies that NO memmove call is present in the assembly generated for
the copy() line.
- Architecture specifiers
There are three different ways to specify on which architecture a test
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment