runtime: reuse common code between 32 and 64-bit RISC-V
Этот коммит содержится в:
родитель
3ee7599a09
коммит
5ff76aacab
3 изменённых файлов: 14 добавлений и 17 удалений
|
@ -1,19 +1,9 @@
|
||||||
// +build tinygo.riscv32
|
// +build tinygo.riscv
|
||||||
|
|
||||||
package runtime
|
package runtime
|
||||||
|
|
||||||
import "device/riscv"
|
import "device/riscv"
|
||||||
|
|
||||||
const GOARCH = "arm" // riscv pretends to be arm
|
|
||||||
|
|
||||||
// The bitness of the CPU (e.g. 8, 32, 64).
|
|
||||||
const TargetBits = 32
|
|
||||||
|
|
||||||
// Align on word boundary.
|
|
||||||
func align(ptr uintptr) uintptr {
|
|
||||||
return (ptr + 3) &^ 3
|
|
||||||
}
|
|
||||||
|
|
||||||
func getCurrentStackPointer() uintptr {
|
func getCurrentStackPointer() uintptr {
|
||||||
return riscv.AsmFull("mv {}, sp", nil)
|
return riscv.AsmFull("mv {}, sp", nil)
|
||||||
}
|
}
|
||||||
|
|
13
src/runtime/arch_tinygoriscv32.go
Обычный файл
13
src/runtime/arch_tinygoriscv32.go
Обычный файл
|
@ -0,0 +1,13 @@
|
||||||
|
// +build tinygo.riscv32
|
||||||
|
|
||||||
|
package runtime
|
||||||
|
|
||||||
|
const GOARCH = "arm" // riscv pretends to be arm
|
||||||
|
|
||||||
|
// The bitness of the CPU (e.g. 8, 32, 64).
|
||||||
|
const TargetBits = 32
|
||||||
|
|
||||||
|
// Align on word boundary.
|
||||||
|
func align(ptr uintptr) uintptr {
|
||||||
|
return (ptr + 3) &^ 3
|
||||||
|
}
|
|
@ -2,8 +2,6 @@
|
||||||
|
|
||||||
package runtime
|
package runtime
|
||||||
|
|
||||||
import "device/riscv"
|
|
||||||
|
|
||||||
const GOARCH = "arm64" // riscv pretends to be arm
|
const GOARCH = "arm64" // riscv pretends to be arm
|
||||||
|
|
||||||
// The bitness of the CPU (e.g. 8, 32, 64).
|
// The bitness of the CPU (e.g. 8, 32, 64).
|
||||||
|
@ -13,7 +11,3 @@ const TargetBits = 64
|
||||||
func align(ptr uintptr) uintptr {
|
func align(ptr uintptr) uintptr {
|
||||||
return (ptr + 7) &^ 7
|
return (ptr + 7) &^ 7
|
||||||
}
|
}
|
||||||
|
|
||||||
func getCurrentStackPointer() uintptr {
|
|
||||||
return riscv.AsmFull("mv {}, sp", nil)
|
|
||||||
}
|
|
||||||
|
|
Загрузка…
Создание таблицы
Сослаться в новой задаче