go-randomx/vm_instruction_purego.go
DataHoarder aab8f99dd4
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
Include softfloat64 and allow for purego implementation
2024-04-17 06:04:29 +02:00

19 lines
524 B
Go

//go:build (!arm64 && !amd64 && !386) || purego
package randomx
import (
"git.gammaspectra.live/P2Pool/softfloat64"
"unsafe"
)
func (pad *ScratchPad) Load32F(addr uint32) (lo, hi float64) {
a := *(*[2]int32)(unsafe.Pointer(&pad[addr]))
return softfloat64.Int32ToFloat64(a[LOW]), softfloat64.Int32ToFloat64(a[HIGH])
}
func (pad *ScratchPad) Load32FA(addr uint32) [2]float64 {
a := *(*[2]int32)(unsafe.Pointer(&pad[addr]))
return [2]float64{softfloat64.Int32ToFloat64(a[LOW]), softfloat64.Int32ToFloat64(a[HIGH])}
}