From e6d2544d20f028dffc529ba58249e11f709382e4 Mon Sep 17 00:00:00 2001 From: Alberto Donizetti Date: Sun, 1 Sep 2019 17:30:56 +0200 Subject: [PATCH] test/codegen: mention -all_codegen in the README MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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/+/192619 Reviewed-by: Daniel Martí --- test/codegen/README | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/test/codegen/README b/test/codegen/README index 298d807bde6..f6877e701d2 100644 --- a/test/codegen/README +++ b/test/codegen/README @@ -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