mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-07 12:33:42 +00:00
all: replace _extern_* workaround with //go:extern pragma
This commit is contained in:
+4
-4
@@ -6,10 +6,10 @@ import (
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
var (
|
||||
_extern__heap_start unsafe.Pointer // defined by the linker
|
||||
heapptr = uintptr(unsafe.Pointer(&_extern__heap_start))
|
||||
)
|
||||
//go:extern _heap_start
|
||||
var heapStart unsafe.Pointer
|
||||
|
||||
var heapptr = uintptr(unsafe.Pointer(&heapStart))
|
||||
|
||||
func alloc(size uintptr) unsafe.Pointer {
|
||||
// TODO: this can be optimized by not casting between pointers and ints so
|
||||
|
||||
@@ -29,15 +29,16 @@ const (
|
||||
WDT_PERIOD_2S
|
||||
)
|
||||
|
||||
var (
|
||||
_extern__sbss unsafe.Pointer // defined by the linker
|
||||
_extern__ebss unsafe.Pointer // defined by the linker
|
||||
)
|
||||
//go:extern _sbss
|
||||
var _sbss unsafe.Pointer
|
||||
|
||||
//go:extern _ebss
|
||||
var _ebss unsafe.Pointer
|
||||
|
||||
func preinit() {
|
||||
// Initialize .bss: zero-initialized global variables.
|
||||
ptr := uintptr(unsafe.Pointer(&_extern__sbss))
|
||||
for ptr != uintptr(unsafe.Pointer(&_extern__ebss)) {
|
||||
ptr := uintptr(unsafe.Pointer(&_sbss))
|
||||
for ptr != uintptr(unsafe.Pointer(&_ebss)) {
|
||||
*(*uint8)(unsafe.Pointer(ptr)) = 0
|
||||
ptr += 1
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user