// generated by wbfat_gen.go; use go generate

package runtime

//go:nosplit
func writebarrierfat01(dst *[2]uintptr, _ uintptr, src [2]uintptr) {
	dst[0] = src[0]
	writebarrierptr(&dst[1], src[1])
}

//go:nosplit
func writebarrierfat10(dst *[2]uintptr, _ uintptr, src [2]uintptr) {
	writebarrierptr(&dst[0], src[0])
	dst[1] = src[1]
}

//go:nosplit
func writebarrierfat11(dst *[2]uintptr, _ uintptr, src [2]uintptr) {
	writebarrierptr(&dst[0], src[0])
	writebarrierptr(&dst[1], src[1])
}

//go:nosplit
func writebarrierfat001(dst *[3]uintptr, _ uintptr, src [3]uintptr) {
	dst[0] = src[0]
	dst[1] = src[1]
	writebarrierptr(&dst[2], src[2])
}

//go:nosplit
func writebarrierfat010(dst *[3]uintptr, _ uintptr, src [3]uintptr) {
	dst[0] = src[0]
	writebarrierptr(&dst[1], src[1])
	dst[2] = src[2]
}

//go:nosplit
func writebarrierfat011(dst *[3]uintptr, _ uintptr, src [3]uintptr) {
	dst[0] = src[0]
	writebarrierptr(&dst[1], src[1])
	writebarrierptr(&dst[2], src[2])
}

//go:nosplit
func writebarrierfat100(dst *[3]uintptr, _ uintptr, src [3]uintptr) {
	writebarrierptr(&dst[0], src[0])
	dst[1] = src[1]
	dst[2] = src[2]
}

//go:nosplit
func writebarrierfat101(dst *[3]uintptr, _ uintptr, src [3]uintptr) {
	writebarrierptr(&dst[0], src[0])
	dst[1] = src[1]
	writebarrierptr(&dst[2], src[2])
}

//go:nosplit
func writebarrierfat110(dst *[3]uintptr, _ uintptr, src [3]uintptr) {
	writebarrierptr(&dst[0], src[0])
	writebarrierptr(&dst[1], src[1])
	dst[2] = src[2]
}

//go:nosplit
func writebarrierfat111(dst *[3]uintptr, _ uintptr, src [3]uintptr) {
	writebarrierptr(&dst[0], src[0])
	writebarrierptr(&dst[1], src[1])
	writebarrierptr(&dst[2], src[2])
}

//go:nosplit
func writebarrierfat0001(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	dst[0] = src[0]
	dst[1] = src[1]
	dst[2] = src[2]
	writebarrierptr(&dst[3], src[3])
}

//go:nosplit
func writebarrierfat0010(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	dst[0] = src[0]
	dst[1] = src[1]
	writebarrierptr(&dst[2], src[2])
	dst[3] = src[3]
}

//go:nosplit
func writebarrierfat0011(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	dst[0] = src[0]
	dst[1] = src[1]
	writebarrierptr(&dst[2], src[2])
	writebarrierptr(&dst[3], src[3])
}

//go:nosplit
func writebarrierfat0100(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	dst[0] = src[0]
	writebarrierptr(&dst[1], src[1])
	dst[2] = src[2]
	dst[3] = src[3]
}

//go:nosplit
func writebarrierfat0101(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	dst[0] = src[0]
	writebarrierptr(&dst[1], src[1])
	dst[2] = src[2]
	writebarrierptr(&dst[3], src[3])
}

//go:nosplit
func writebarrierfat0110(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	dst[0] = src[0]
	writebarrierptr(&dst[1], src[1])
	writebarrierptr(&dst[2], src[2])
	dst[3] = src[3]
}

//go:nosplit
func writebarrierfat0111(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	dst[0] = src[0]
	writebarrierptr(&dst[1], src[1])
	writebarrierptr(&dst[2], src[2])
	writebarrierptr(&dst[3], src[3])
}

//go:nosplit
func writebarrierfat1000(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	dst[1] = src[1]
	dst[2] = src[2]
	dst[3] = src[3]
}

//go:nosplit
func writebarrierfat1001(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	dst[1] = src[1]
	dst[2] = src[2]
	writebarrierptr(&dst[3], src[3])
}

//go:nosplit
func writebarrierfat1010(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	dst[1] = src[1]
	writebarrierptr(&dst[2], src[2])
	dst[3] = src[3]
}

//go:nosplit
func writebarrierfat1011(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	dst[1] = src[1]
	writebarrierptr(&dst[2], src[2])
	writebarrierptr(&dst[3], src[3])
}

//go:nosplit
func writebarrierfat1100(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	writebarrierptr(&dst[1], src[1])
	dst[2] = src[2]
	dst[3] = src[3]
}

//go:nosplit
func writebarrierfat1101(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	writebarrierptr(&dst[1], src[1])
	dst[2] = src[2]
	writebarrierptr(&dst[3], src[3])
}

//go:nosplit
func writebarrierfat1110(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	writebarrierptr(&dst[1], src[1])
	writebarrierptr(&dst[2], src[2])
	dst[3] = src[3]
}

//go:nosplit
func writebarrierfat1111(dst *[4]uintptr, _ uintptr, src [4]uintptr) {
	writebarrierptr(&dst[0], src[0])
	writebarrierptr(&dst[1], src[1])
	writebarrierptr(&dst[2], src[2])
	writebarrierptr(&dst[3], src[3])
}
