fix golang sdk version issue

This commit is contained in:
Sun Yimin 2023-06-01 11:22:43 +08:00 committed by GitHub
parent 0bf96ecea2
commit 88a158f61c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -9,14 +9,19 @@ package bigmod
import "unsafe" import "unsafe"
// TODO: will use unsafe.Slice directly once upgrade golang sdk to 1.17+
func slice(ptr *uint, len int) []uint {
return (*[len]uint)(unsafe.Pointer(ptr))[:]
}
func addMulVVW1024(z, x *uint, y uint) (c uint) { func addMulVVW1024(z, x *uint, y uint) (c uint) {
return addMulVVW(unsafe.Slice(z, 1024/_W), unsafe.Slice(x, 1024/_W), y) return addMulVVW(slice(z, 1024/_W), slice(x, 1024/_W), y)
} }
func addMulVVW1536(z, x *uint, y uint) (c uint) { func addMulVVW1536(z, x *uint, y uint) (c uint) {
return addMulVVW(unsafe.Slice(z, 1536/_W), unsafe.Slice(x, 1536/_W), y) return addMulVVW(slice(z, 1536/_W), slice(x, 1536/_W), y)
} }
func addMulVVW2048(z, x *uint, y uint) (c uint) { func addMulVVW2048(z, x *uint, y uint) (c uint) {
return addMulVVW(unsafe.Slice(z, 2048/_W), unsafe.Slice(x, 2048/_W), y) return addMulVVW(slice(z, 2048/_W), slice(x, 2048/_W), y)
} }