From: Giovanni Bajo Date: Sun, 15 Apr 2018 17:17:41 +0000 (+0200) Subject: test: migrate plan9 tests to codegen X-Git-Tag: go1.11beta1~820 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=01aa1d7dbe3a5b9f9a96f84cc625cbb7e372b0f0;p=gostls13.git test: migrate plan9 tests to codegen And remove it from asmtest. Next CL will remove the whole asmtest infrastructure. Change-Id: I5851bf7c617456d62a3c6cffacf70252df7b056b Reviewed-on: https://go-review.googlesource.com/107335 Run-TryBot: Giovanni Bajo TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- diff --git a/src/cmd/compile/internal/gc/asm_test.go b/src/cmd/compile/internal/gc/asm_test.go index b71dc20889..27dbfd865b 100644 --- a/src/cmd/compile/internal/gc/asm_test.go +++ b/src/cmd/compile/internal/gc/asm_test.go @@ -220,39 +220,7 @@ func (ats *asmTests) runGo(t *testing.T, args ...string) string { return stdout.String() } -var allAsmTests = []*asmTests{ - { - arch: "amd64", - os: "plan9", - tests: plan9AMD64Tests, - }, -} - -var plan9AMD64Tests = []*asmTest{ - // We should make sure that the compiler doesn't generate floating point - // instructions for non-float operations on Plan 9, because floating point - // operations are not allowed in the note handler. - // Array zeroing. - { - fn: ` - func $() [16]byte { - var a [16]byte - return a - } - `, - pos: []string{"\tMOVQ\t\\$0, \"\""}, - }, - // Array copy. - { - fn: ` - func $(a [16]byte) (b [16]byte) { - b = a - return - } - `, - pos: []string{"\tMOVQ\t\"\"\\.a\\+[0-9]+\\(SP\\), (AX|CX)", "\tMOVQ\t(AX|CX), \"\"\\.b\\+[0-9]+\\(SP\\)"}, - }, -} +var allAsmTests = []*asmTests{} // TestLineNumber checks to make sure the generated assembly has line numbers // see issue #16214 diff --git a/test/codegen/floats.go b/test/codegen/floats.go index cab63488f4..c2847dd939 100644 --- a/test/codegen/floats.go +++ b/test/codegen/floats.go @@ -71,3 +71,25 @@ func FusedSub64(x, y, z float64) float64 { // ppc64le:"FMSUB\t" return x*y - z } + +// ---------------- // +// Non-floats // +// ---------------- // + +// We should make sure that the compiler doesn't generate floating point +// instructions for non-float operations on Plan 9, because floating point +// operations are not allowed in the note handler. + +func ArrayZero() [16]byte { + // amd64:"MOVUPS" + // plan9/amd64/:-"MOVUPS" + var a [16]byte + return a +} + +func ArrayCopy(a [16]byte) (b [16]byte) { + // amd64:"MOVUPS" + // plan9/amd64/:-"MOVUPS" + b = a + return +}