mirror of
https://github.com/golang/go
synced 2024-11-27 03:21:18 -07:00
ca0c449a6b
The compiler has advanced enough that it is cheaper to convert to strings than to go through the assembly trampolines to call runtime.memequal. Simplify Equal accordingly, and cull dead code from bytealg. While we're here, simplify Equal's documentation. Fixes #31587 Change-Id: Ie721d33f9a6cbd86b1d873398b20e7882c2c63e9 Reviewed-on: https://go-review.googlesource.com/c/go/+/173323 Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Dave Cheney <dave@cheney.net> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
22 lines
789 B
Go
22 lines
789 B
Go
// Copyright 2018 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 bytealg
|
|
|
|
import "unsafe"
|
|
|
|
// The declarations below generate ABI wrappers for functions
|
|
// implemented in assembly in this package but declared in another
|
|
// package.
|
|
|
|
// The compiler generates calls to runtime.memequal and runtime.memequal_varlen.
|
|
// In addition, the runtime calls runtime.memequal explicitly.
|
|
// Those functions are implemented in this package.
|
|
|
|
//go:linkname abigen_runtime_memequal runtime.memequal
|
|
func abigen_runtime_memequal(a, b unsafe.Pointer, size uintptr) bool
|
|
|
|
//go:linkname abigen_runtime_memequal_varlen runtime.memequal_varlen
|
|
func abigen_runtime_memequal_varlen(a, b unsafe.Pointer) bool
|