
This page has been a big help in adding support for this new chip: https://wiki.osdev.org/HiFive-1_Bare_Bones
19 строки
398 Б
Go
19 строки
398 Б
Go
// +build tinygo.riscv
|
|
|
|
package runtime
|
|
|
|
import "unsafe"
|
|
|
|
// Implement memset for LLVM.
|
|
//go:export memset
|
|
func libc_memset(ptr unsafe.Pointer, c byte, size uintptr) {
|
|
for i := uintptr(0); i < size; i++ {
|
|
*(*byte)(unsafe.Pointer(uintptr(ptr) + i)) = c
|
|
}
|
|
}
|
|
|
|
// Implement memmove for LLVM.
|
|
//go:export memmove
|
|
func libc_memmove(dst, src unsafe.Pointer, size uintptr) {
|
|
memmove(dst, src, size)
|
|
}
|