remove memclr/memmove entirely now that they are unused
This breaks with newer Go versions AFAICT, so it’s easier to just remove it entirely.geesefs-0-31-3
parent
84920d11dd
commit
1c9fe7bc84
|
@ -49,47 +49,6 @@ func findNonZero(p unsafe.Pointer, n int) int {
|
|||
return n
|
||||
}
|
||||
|
||||
func TestMemclr(t *testing.T) {
|
||||
// All sizes up to 32 bytes.
|
||||
var sizes []int
|
||||
for i := 0; i <= 32; i++ {
|
||||
sizes = append(sizes, i)
|
||||
}
|
||||
|
||||
// And a few hand-chosen sizes.
|
||||
sizes = append(sizes, []int{
|
||||
39, 41, 64, 127, 128, 129,
|
||||
1<<20 - 1,
|
||||
1 << 20,
|
||||
1<<20 + 1,
|
||||
}...)
|
||||
|
||||
// For each size, fill a buffer with random bytes and then zero it.
|
||||
for _, size := range sizes {
|
||||
size := size
|
||||
t.Run(fmt.Sprintf("size=%d", size), func(t *testing.T) {
|
||||
// Generate
|
||||
b, err := randBytes(size)
|
||||
if err != nil {
|
||||
t.Fatalf("randBytes: %v", err)
|
||||
}
|
||||
|
||||
// Clear
|
||||
var p unsafe.Pointer
|
||||
if len(b) != 0 {
|
||||
p = unsafe.Pointer(&b[0])
|
||||
}
|
||||
|
||||
jacobsa_fuse_memclr(p, uintptr(len(b)))
|
||||
|
||||
// Check
|
||||
if i := findNonZero(p, len(b)); i != len(b) {
|
||||
t.Fatalf("non-zero byte at offset %d", i)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestOutMessageAppend(t *testing.T) {
|
||||
var om OutMessage
|
||||
om.Reset()
|
||||
|
@ -234,7 +193,7 @@ func TestOutMessageReset(t *testing.T) {
|
|||
}
|
||||
|
||||
// Ensure a non-zero payload length.
|
||||
p := om.Grow(128)
|
||||
om.Grow(128)
|
||||
|
||||
// Reset.
|
||||
om.Reset()
|
||||
|
|
|
@ -1,31 +0,0 @@
|
|||
// Copyright 2015 Google Inc. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package buffer
|
||||
|
||||
import "unsafe"
|
||||
|
||||
//go:noescape
|
||||
|
||||
// Zero the n bytes starting at p.
|
||||
//
|
||||
// REQUIRES: the region does not contain any Go pointers.
|
||||
//go:linkname jacobsa_fuse_memclr runtime.memclrNoHeapPointers
|
||||
func jacobsa_fuse_memclr(p unsafe.Pointer, n uintptr)
|
||||
|
||||
//go:noescape
|
||||
|
||||
// Copy from src to dst, allowing overlap.
|
||||
//go:linkname jacobsa_fuse_memmove runtime.memmove
|
||||
func jacobsa_fuse_memmove(dst unsafe.Pointer, src unsafe.Pointer, n uintptr)
|
|
@ -1,18 +0,0 @@
|
|||
// Copyright 2015 Google Inc. All Rights Reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
// The buffer package uses //go:linkname to push a few functions into this
|
||||
// package but we still need a .s file so the Go tool does not pass -complete
|
||||
// to the go tool compile so the latter does not complain about Go functions
|
||||
// with no bodies.
|
Loading…
Reference in New Issue