fix(verify): fix flaky JIT tests with global buffers and KeepAlive
This commit is contained in:
@@ -5,6 +5,7 @@ package verify
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"runtime"
|
||||
"testing"
|
||||
"unsafe"
|
||||
)
|
||||
@@ -68,6 +69,7 @@ func TestJITSum(t *testing.T) {
|
||||
PutUint64(args, 16, uint64(cap(tt.data)))
|
||||
|
||||
out, err := k.CallFunc("sum", args)
|
||||
runtime.KeepAlive(tt.data)
|
||||
if err != nil {
|
||||
t.Fatalf("CallFunc(sum, %v): %v", tt.data, err)
|
||||
}
|
||||
@@ -111,6 +113,8 @@ func TestJITWideCopy(t *testing.T) {
|
||||
PutUint64(args, 40, uint64(tt.n)) // src_cap
|
||||
|
||||
_, err := k.CallFunc("wideCopy", args)
|
||||
runtime.KeepAlive(dst)
|
||||
runtime.KeepAlive(src)
|
||||
if err != nil {
|
||||
t.Fatalf("CallFunc(wideCopy): %v", err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user