// asmcheck // Copyright 2022 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package codegen func f1(x *[4]int, y *[4]int) { // amd64:".*memmove" *x = *y } func f2(x *[4]int, y [4]int) { // amd64:-".*memmove" *x = y } func f3(x *[4]int, y *[4]int) { // amd64:-".*memmove" t := *y // amd64:-".*memmove" *x = t } func f4(x *[4]int, y [4]int) { // amd64:-".*memmove" t := y // amd64:-".*memmove" *x = t } type T struct { a [4]int } func f5(x, y *T) { // amd64:-".*memmove" x.a = y.a } func f6(x *T, y T) { // amd64:-".*memmove" x.a = y.a } func f7(x *T, y *[4]int) { // amd64:-".*memmove" x.a = *y } func f8(x *[4]int, y *T) { // amd64:-".*memmove" *x = y.a } func f9(x [][4]int, y [][4]int, i, j int) { // amd64:-".*memmove" x[i] = y[j] } func f10() []byte { // amd64:-".*memmove" return []byte("aReasonablyBigTestString") }