diff options
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/internal')
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go | 9 | ||||
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_slice.go (renamed from vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_slice.go) | 13 | ||||
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_unix.go (renamed from vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_unix.go) | 4 | ||||
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_windows.go (renamed from vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_windows.go) | 6 | ||||
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_other.go | 9 | ||||
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/util/const.go | 2 | ||||
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/util/mmap.go | 5 | ||||
-rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/internal/util/mmap_other.go | 7 |
8 files changed, 28 insertions, 27 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go new file mode 100644 index 000000000..ded8da108 --- /dev/null +++ b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_other.go @@ -0,0 +1,9 @@ +//go:build !(unix || windows) || sqlite3_nosys + +package alloc + +import "github.com/tetratelabs/wazero/experimental" + +func Virtual(cap, max uint64) experimental.LinearMemory { + return Slice(cap, max) +} diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_slice.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_slice.go index b8cc1453c..5072ca9c1 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_slice.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_slice.go @@ -1,21 +1,20 @@ //go:build !(darwin || linux) || !(amd64 || arm64 || riscv64) || sqlite3_noshm || sqlite3_nosys -package util +package alloc import "github.com/tetratelabs/wazero/experimental" -func sliceAlloc(cap, max uint64) experimental.LinearMemory { - return &sliceBuffer{make([]byte, cap), max} +func Slice(cap, _ uint64) experimental.LinearMemory { + return &sliceMemory{make([]byte, 0, cap)} } -type sliceBuffer struct { +type sliceMemory struct { buf []byte - max uint64 } -func (b *sliceBuffer) Free() {} +func (b *sliceMemory) Free() {} -func (b *sliceBuffer) Reallocate(size uint64) []byte { +func (b *sliceMemory) Reallocate(size uint64) []byte { if cap := uint64(cap(b.buf)); size > cap { b.buf = append(b.buf[:cap], make([]byte, size-cap)...) } else { diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_unix.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_unix.go index 2b1d3916b..39a3a38cc 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_unix.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_unix.go @@ -1,6 +1,6 @@ //go:build unix && !sqlite3_nosys -package util +package alloc import ( "math" @@ -9,7 +9,7 @@ import ( "golang.org/x/sys/unix" ) -func virtualAlloc(cap, max uint64) experimental.LinearMemory { +func Virtual(_, max uint64) experimental.LinearMemory { // Round up to the page size. rnd := uint64(unix.Getpagesize() - 1) max = (max + rnd) &^ rnd diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_windows.go b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_windows.go index 8936173b4..27d875f2e 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_windows.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/alloc/alloc_windows.go @@ -1,6 +1,6 @@ //go:build !sqlite3_nosys -package util +package alloc import ( "math" @@ -11,7 +11,7 @@ import ( "golang.org/x/sys/windows" ) -func virtualAlloc(cap, max uint64) experimental.LinearMemory { +func Virtual(_, max uint64) experimental.LinearMemory { // Round up to the page size. rnd := uint64(windows.Getpagesize() - 1) max = (max + rnd) &^ rnd @@ -32,7 +32,7 @@ func virtualAlloc(cap, max uint64) experimental.LinearMemory { mem := virtualMemory{addr: r} // SliceHeader, although deprecated, avoids a go vet warning. sh := (*reflect.SliceHeader)(unsafe.Pointer(&mem.buf)) - sh.Cap = int(max) // Not a bug. + sh.Cap = int(max) sh.Data = r return &mem } diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_other.go b/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_other.go deleted file mode 100644 index ba16efc02..000000000 --- a/vendor/github.com/ncruces/go-sqlite3/internal/util/alloc_other.go +++ /dev/null @@ -1,9 +0,0 @@ -//go:build !(unix || windows) || sqlite3_nosys - -package util - -import "github.com/tetratelabs/wazero/experimental" - -func virtualAlloc(cap, max uint64) experimental.LinearMemory { - return sliceAlloc(cap, max) -} diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/const.go b/vendor/github.com/ncruces/go-sqlite3/internal/util/const.go index 86bb9749d..5e89018dd 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/util/const.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/util/const.go @@ -1,6 +1,6 @@ package util -// https://sqlite.com/matrix/rescode.html +// https://sqlite.com/rescode.html const ( OK = 0 /* Successful result */ diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap.go b/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap.go index 6783c9612..a4fa2a25a 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap.go @@ -1,4 +1,4 @@ -//go:build (darwin || linux) && (amd64 || arm64 || riscv64) && !(sqlite3_noshm || sqlite3_nosys) +//go:build unix && (amd64 || arm64 || riscv64) && !(sqlite3_noshm || sqlite3_nosys) package util @@ -7,6 +7,7 @@ import ( "os" "unsafe" + "github.com/ncruces/go-sqlite3/internal/alloc" "github.com/tetratelabs/wazero/api" "github.com/tetratelabs/wazero/experimental" "golang.org/x/sys/unix" @@ -14,7 +15,7 @@ import ( func withAllocator(ctx context.Context) context.Context { return experimental.WithMemoryAllocator(ctx, - experimental.MemoryAllocatorFunc(virtualAlloc)) + experimental.MemoryAllocatorFunc(alloc.Virtual)) } type mmapState struct { diff --git a/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap_other.go b/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap_other.go index 1e81c9fd3..a0a3ba67d 100644 --- a/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap_other.go +++ b/vendor/github.com/ncruces/go-sqlite3/internal/util/mmap_other.go @@ -1,10 +1,11 @@ -//go:build !(darwin || linux) || !(amd64 || arm64 || riscv64) || sqlite3_noshm || sqlite3_nosys +//go:build !unix || !(amd64 || arm64 || riscv64) || sqlite3_noshm || sqlite3_nosys package util import ( "context" + "github.com/ncruces/go-sqlite3/internal/alloc" "github.com/tetratelabs/wazero/experimental" ) @@ -14,8 +15,8 @@ func withAllocator(ctx context.Context) context.Context { return experimental.WithMemoryAllocator(ctx, experimental.MemoryAllocatorFunc(func(cap, max uint64) experimental.LinearMemory { if cap == max { - return virtualAlloc(cap, max) + return alloc.Virtual(cap, max) } - return sliceAlloc(cap, max) + return alloc.Slice(cap, max) })) } |