mirror of
https://github.com/golang/go
synced 2024-11-12 07:40:23 -07:00
test/codegen: port all small memmove tests to codegen
This change ports all the remaining tests checking that small memmoves are replaced with MOVs to the new codegen test harness, and deletes them from the asm_test file. Change-Id: I01c94b441e27a5d61518035af62d62779dafeb56 Reviewed-on: https://go-review.googlesource.com/100476 Run-TryBot: Alberto Donizetti <alb.donizetti@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
This commit is contained in:
parent
858042b8fd
commit
cd3aae9b81
@ -630,36 +630,6 @@ var linuxAMD64Tests = []*asmTest{
|
||||
`,
|
||||
pos: []string{"\tANDQ\t\\$4095,"},
|
||||
},
|
||||
{
|
||||
// Test that small memmove was replaced with direct movs
|
||||
fn: `
|
||||
func $() {
|
||||
x := [...]byte{1, 2, 3, 4, 5, 6, 7}
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
`,
|
||||
neg: []string{"memmove"},
|
||||
},
|
||||
{
|
||||
// Same as above but with different size
|
||||
fn: `
|
||||
func $() {
|
||||
x := [...]byte{1, 2, 3, 4}
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
`,
|
||||
neg: []string{"memmove"},
|
||||
},
|
||||
{
|
||||
// Same as above but with different size
|
||||
fn: `
|
||||
func $() {
|
||||
x := [...]byte{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
`,
|
||||
neg: []string{"memmove"},
|
||||
},
|
||||
{
|
||||
fn: `
|
||||
func $(p int, q *int) bool {
|
||||
@ -765,26 +735,6 @@ var linux386Tests = []*asmTest{
|
||||
`,
|
||||
pos: []string{"\tANDL\t\\$4095,"},
|
||||
},
|
||||
{
|
||||
// Test that small memmove was replaced with direct movs
|
||||
fn: `
|
||||
func $() {
|
||||
x := [...]byte{1, 2, 3, 4, 5, 6, 7}
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
`,
|
||||
neg: []string{"memmove"},
|
||||
},
|
||||
{
|
||||
// Same as above but with different size
|
||||
fn: `
|
||||
func $() {
|
||||
x := [...]byte{1, 2, 3, 4}
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
`,
|
||||
neg: []string{"memmove"},
|
||||
},
|
||||
}
|
||||
|
||||
var linuxS390XTests = []*asmTest{
|
||||
|
@ -6,7 +6,28 @@
|
||||
|
||||
package codegen
|
||||
|
||||
func movesmall() {
|
||||
x := [...]byte{1, 2, 3, 4, 5, 6, 7}
|
||||
copy(x[1:], x[:]) // arm64:-".*memmove"
|
||||
// These tests check that memmoves calls on small data are replaced
|
||||
// with MOVs
|
||||
|
||||
func movesmall4() {
|
||||
x := [...]byte{1, 2, 3, 4}
|
||||
// 386:-".*memmove"
|
||||
// amd64:-".*memmove"
|
||||
// arm:-".*memmove"
|
||||
// arm64:-".*memmove"
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
|
||||
func movesmall7() {
|
||||
x := [...]byte{1, 2, 3, 4, 5, 6, 7}
|
||||
// 386:-".*memmove"
|
||||
// amd64:-".*memmove"
|
||||
// arm64:-".*memmove"
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
|
||||
func movesmall16() {
|
||||
x := [...]byte{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}
|
||||
// amd64:-".*memmove"
|
||||
copy(x[1:], x[:])
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user