mirror of https://github.com/golang/go.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 <rasky@develer.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
This commit is contained in:
parent
b47806d1b5
commit
01aa1d7dbe
|
|
@ -220,39 +220,7 @@ func (ats *asmTests) runGo(t *testing.T, args ...string) string {
|
||||||
return stdout.String()
|
return stdout.String()
|
||||||
}
|
}
|
||||||
|
|
||||||
var allAsmTests = []*asmTests{
|
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\\)"},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
// TestLineNumber checks to make sure the generated assembly has line numbers
|
// TestLineNumber checks to make sure the generated assembly has line numbers
|
||||||
// see issue #16214
|
// see issue #16214
|
||||||
|
|
|
||||||
|
|
@ -71,3 +71,25 @@ func FusedSub64(x, y, z float64) float64 {
|
||||||
// ppc64le:"FMSUB\t"
|
// ppc64le:"FMSUB\t"
|
||||||
return x*y - z
|
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
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue