tinygo/src/runtime
Ayke van Laethem c7b91da8c4 compiler: support function pointers outside of addrspace 0
In LLVM 8, the AVR backend has moved all function pointers to address
space 1 by default. Much of the code still assumes function pointers
live in address space 0, leading to assertion failures.

This commit fixes this problem by autodetecting function pointers and
avoiding them in interface pseudo-calls.
2019-03-05 19:54:55 +01:00
..
cgo runtime/cgo: go fmt 2018-09-14 20:58:00 +02:00
internal/sys all: add stub pieces for GoLand support 2018-12-01 18:32:34 +01:00
arch_386.go all: add support for more architectures and GOOS/GOARCH (#118) 2019-01-05 11:46:25 +01:00
arch_amd64.go amd64: align on 16 bytes instead of 8 2019-02-05 17:11:09 +01:00
arch_arm.go all: add support for more architectures and GOOS/GOARCH (#118) 2019-01-05 11:46:25 +01:00
arch_arm64.go all: add support for more architectures and GOOS/GOARCH (#118) 2019-01-05 11:46:25 +01:00
arch_avr.go runtime: add "end of heap" to detect out of memory 2018-11-17 15:33:32 +01:00
arch_tinygoarm.go runtime: implement a simple mark/sweep garbage collector 2018-11-18 19:18:39 +01:00
arch_wasm.go wasm: fix heap end address 2018-11-24 19:00:42 +01:00
atomic.go all: basic support for the os package 2018-09-16 13:01:03 +02:00
chan.go compiler: add support for channel operations 2019-01-21 22:09:37 +01:00
defer.go compiler: avoid function pointers in defer calls 2018-12-09 16:44:37 +01:00
gc_dumb.go runtime: add "end of heap" to detect out of memory 2018-11-17 15:33:32 +01:00
gc_marksweep.go runtime: implement a simple mark/sweep garbage collector 2018-11-18 19:18:39 +01:00
gc_none.go runtime: add "none" garbage collector 2018-11-17 15:14:29 +01:00
hashmap.go runtime: update link to original Go hashmap source code 2018-12-31 13:33:18 +01:00
interface.go compiler: support function pointers outside of addrspace 0 2019-03-05 19:54:55 +01:00
math.go runtime: add support for math package 2019-02-05 19:37:21 +01:00
os_darwin.go all: add macOS support 2019-02-19 15:54:36 +01:00
os_js.go Add runtime.GOOS 2018-08-30 05:48:16 +02:00
os_linux.go Add runtime.GOOS 2018-08-30 05:48:16 +02:00
override_js.go all: rename 'arm' to 'tinygo.arm' for Cortex-M 2018-11-09 11:50:38 +01:00
panic.go compiler: calculate max number of entries in slice at compile time 2019-03-05 19:25:42 +01:00
poll.go runtime: remove ctx param from stub code 2019-01-14 20:56:42 +01:00
print.go compiler: lower interfaces in a separate pass 2018-12-01 13:26:06 +01:00
runtime.go Makefile: rename tgo to tinygo 2019-02-01 13:26:32 +01:00
runtime_atmega.go avr: add support for the digispark 2018-11-20 18:50:24 +01:00
runtime_atsamd21.go machine/samd21: init all SERCOM clocks to better handle board variants 2019-03-04 17:17:03 +01:00
runtime_attiny.go avr: add support for the digispark 2018-11-20 18:50:24 +01:00
runtime_avr.go all: rewrite goroutine lowering 2019-01-21 22:09:33 +01:00
runtime_nrf.go all: rewrite goroutine lowering 2019-01-21 22:09:33 +01:00
runtime_qemu.go all: rewrite goroutine lowering 2019-01-21 22:09:33 +01:00
runtime_stm32.go all: rewrite goroutine lowering 2019-01-21 22:09:33 +01:00
runtime_stm32f103xx.go all: rewrite goroutine lowering 2019-01-21 22:09:33 +01:00
runtime_tinygoarm.go runtime: unify GC interface 2018-11-17 14:11:58 +01:00
runtime_unix.go all: add macOS support 2019-02-19 15:54:36 +01:00
runtime_wasm.go all: rewrite goroutine lowering 2019-01-21 22:09:33 +01:00
scheduler.go compiler: add support for channel operations 2019-01-21 22:09:37 +01:00
slice.go compiler: update integer type sizes 2018-11-14 14:01:04 +01:00
stack.go Implement runtime functions for reflect 2018-08-30 22:53:34 +02:00
string.go runtime: make stringNext use byteindex only, fix index offset 2019-01-27 23:31:43 +01:00
sync.go all: basic support for the os package 2018-09-16 13:01:03 +02:00