1
0
mirror of https://github.com/golang/go synced 2024-11-26 18:26:48 -07:00

test: make codegen/memops.go work with both ABIs

Following CL 309335, this fixes memops.go.

Change-Id: Ia2458b5267deee9f906f76c50e70a021ea2fcb5b
Reviewed-on: https://go-review.googlesource.com/c/go/+/309552
Trust: Cherry Zhang <cherryyz@google.com>
Run-TryBot: Cherry Zhang <cherryyz@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: David Chase <drchase@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
This commit is contained in:
Cherry Zhang 2021-04-12 18:56:25 -04:00
parent 13a4e8c41c
commit 444d28295b

View File

@ -36,50 +36,34 @@ func compMem1() int {
return 0
}
//go:noinline
func f(x int) bool {
return false
type T struct {
x bool
x8 uint8
x16 uint16
x32 uint32
x64 uint64
a [2]int // force it passed in memory
}
//go:noinline
func f8(x int) int8 {
return 0
}
//go:noinline
func f16(x int) int16 {
return 0
}
//go:noinline
func f32(x int) int32 {
return 0
}
//go:noinline
func f64(x int) int64 {
return 0
}
func compMem2() int {
// amd64:`CMPB\t8\(SP\), [$]0`
if f(3) {
func compMem2(t T) int {
// amd64:`CMPB\t.*\(SP\), [$]0`
if t.x {
return 1
}
// amd64:`CMPB\t8\(SP\), [$]7`
if f8(3) == 7 {
// amd64:`CMPB\t.*\(SP\), [$]7`
if t.x8 == 7 {
return 1
}
// amd64:`CMPW\t8\(SP\), [$]7`
if f16(3) == 7 {
// amd64:`CMPW\t.*\(SP\), [$]7`
if t.x16 == 7 {
return 1
}
// amd64:`CMPL\t8\(SP\), [$]7`
if f32(3) == 7 {
// amd64:`CMPL\t.*\(SP\), [$]7`
if t.x32 == 7 {
return 1
}
// amd64:`CMPQ\t8\(SP\), [$]7`
if f64(3) == 7 {
// amd64:`CMPQ\t.*\(SP\), [$]7`
if t.x64 == 7 {
return 1
}
return 0