tinygo/src/runtime
Ayke van Laethem 2d61972475 gc: drop support for 'precise' globals
Precise globals require a whole program optimization pass that is hard
to support when building packages separately. This patch removes support
for these globals by converting the last use (Linux) to use
linker-defined symbols instead.

For details, see: https://github.com/tinygo-org/tinygo/issues/2870
2022-06-01 21:21:30 +02:00
..
cgo runtime/cgo: go fmt 2018-09-14 20:58:00 +02:00
debug src/runtime: add stub for debug.ReadBuildInfo() 2022-03-07 20:03:51 +01:00
internal/sys all: check formatting on CI 2019-04-13 19:58:58 +02:00
interrupt add support for GPIO interrupts on esp32c3 2022-03-08 09:13:15 +01:00
pprof loader: rewrite/refactor much of the code to use go list directly 2020-09-03 22:10:14 +02:00
volatile all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
algorithm.go src/runtime: add per-map hash seeds 2022-06-01 13:28:22 +02:00
arch_386.go runtime: use LLVM intrinsic to read the stack pointer 2021-11-30 10:01:44 +01:00
arch_amd64.go runtime: use LLVM intrinsic to read the stack pointer 2021-11-30 10:01:44 +01:00
arch_arm.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
arch_arm64.go runtime: use LLVM intrinsic to read the stack pointer 2021-11-30 10:01:44 +01:00
arch_avr.go compiler: work around AVR atomics bugs 2022-01-14 13:49:20 +01:00
arch_cortexm.go rumtime: implement __sync libcalls as critical sections 2021-12-28 22:12:03 +01:00
arch_tinygoriscv.go rumtime: implement __sync libcalls as critical sections 2021-12-28 22:12:03 +01:00
arch_tinygoriscv32.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
arch_tinygoriscv64.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
arch_tinygowasm.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
arch_xtensa.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
atomics_critical.go rumtime: implement __sync libcalls as critical sections 2021-12-28 22:12:03 +01:00
baremetal.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
chan.go internal/task: remove coroutines 2022-01-19 14:42:02 -05:00
complex.go compiler: implement complex division 2019-05-11 15:33:37 +02:00
cond.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
cond_nosched.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
debug.go updating the comments for stub funcs 2022-03-19 19:09:20 +01:00
defer.go compiler: avoid function pointers in defer calls 2018-12-09 16:44:37 +01:00
dynamic_arm64.go nintendoswitch: Add env parser and removed unused stuff 2020-11-03 23:28:55 +01:00
env_linux.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
error.go extend stdlib to allow import of more packages (#1099) 2020-06-23 11:56:28 +02:00
extern.go src/runtime: add runtime.Version() 2022-03-19 15:36:44 +01:00
float.go compiler: implement complex division 2019-05-11 15:33:37 +02:00
func.go compiler: decouple func lowering from interface type codes 2021-04-12 12:07:42 +02:00
gc_386.S 386: bump minimum requirement to the Pentium 4 2021-08-10 20:08:27 +02:00
gc_amd64.S internal/task, runtime: add subsections_via_symbols to assembly files on darwin 2021-09-07 08:00:11 +02:00
gc_amd64_windows.S all: add support for windows/amd64 2021-11-16 11:08:30 +01:00
gc_arm.S runtime: move/refactor some GC-related code 2020-10-02 08:54:43 +02:00
gc_arm64.S darwin: add support for arm64 GOARCH (aka Apple Silicon) 2022-05-20 08:35:18 +02:00
gc_avr.S runtime: move/refactor some GC-related code 2020-10-02 08:54:43 +02:00
gc_conservative.go all: remove support for LLVM 11 and LLVM 12 2022-05-07 17:15:35 +02:00
gc_globals.go gc: drop support for 'precise' globals 2022-06-01 21:21:30 +02:00
gc_leaking.go windows: scan globals conservatively 2022-05-23 21:24:14 +02:00
gc_none.go windows: scan globals conservatively 2022-05-23 21:24:14 +02:00
gc_riscv.S runtime: move/refactor some GC-related code 2020-10-02 08:54:43 +02:00
gc_stack_portable.go runtime: remove extalloc 2021-12-17 18:15:18 +01:00
gc_stack_raw.go runtime: remove extalloc 2021-12-17 18:15:18 +01:00
hashmap.go src/runtime: handle nil map write panics 2022-06-01 13:28:22 +02:00
hosted.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
interface.go runtime: allow comparing interfaces in reflectValueEqual() 2021-11-24 14:17:47 +01:00
mstats.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
nonhosted.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
os_darwin.go darwin: scan globals by reading MachO header 2022-05-25 12:51:31 +02:00
os_js.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
os_linux.go gc: drop support for 'precise' globals 2022-06-01 21:21:30 +02:00
os_other.go gc: drop support for 'precise' globals 2022-06-01 21:21:30 +02:00
os_windows.go windows: scan globals conservatively 2022-05-23 21:24:14 +02:00
panic.go src/runtime: handle nil map write panics 2022-06-01 13:28:22 +02:00
poll.go runtime: remove ctx param from stub code 2019-01-14 20:56:42 +01:00
print.go runtime: only use CRLF on baremetal systems 2021-11-16 11:08:30 +01:00
runtime.go runtime: stub {Lock,Unlock}OSThread. Makes 1.18 happier on windows. 2022-04-07 10:27:34 +02:00
runtime_arm7tdmi.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_atmega.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_atsamd21.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_atsamd21e18.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsamd21g18.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsamd51.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_atsamd51g19.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsamd51j19.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsamd51j20.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsamd51p19.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsamd51p20.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsame5x_can.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsame51j19.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_atsame54p20.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_attiny.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_avr.go avr: simplify timer-based time 2022-05-25 11:53:30 +02:00
runtime_cortexm.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_cortexm_abort.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_cortexm_hardfault.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_cortexm_hardfault_debug.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_cortexm_qemu.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_esp32.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_esp32c3.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_esp32xx.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_esp8266.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_fe310.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_fe310_baremetal.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_fe310_qemu.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_k210.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_k210_baremetal.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_mimxrt1062.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_mimxrt1062_clock.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_mimxrt1062_mpu.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_mimxrt1062_time.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_nintendoswitch.go nintendoswitch: scan globals conservatively 2022-05-29 21:00:09 +02:00
runtime_nintendoswitch.s nintendoswitch: Add env parser and removed unused stuff 2020-11-03 23:28:55 +01:00
runtime_nrf.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_nrf_bare.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_nrf_softdevice.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_nxpmk66f18.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_rp2040.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_stm32_timers.go Revert "all: move stm32 files to separate repository" 2022-02-28 10:19:26 +01:00
runtime_stm32f4.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32f7x2.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32f103.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32f405.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32f407.go Revert "all: move stm32 files to separate repository" 2022-02-28 10:19:26 +01:00
runtime_stm32f469.go Revert "all: move stm32 files to separate repository" 2022-02-28 10:19:26 +01:00
runtime_stm32l0.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32l0x1.go Revert "all: move stm32 files to separate repository" 2022-02-28 10:19:26 +01:00
runtime_stm32l0x2.go Revert "all: move stm32 files to separate repository" 2022-02-28 10:19:26 +01:00
runtime_stm32l4.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32l4x2.go Revert "all: move stm32 files to separate repository" 2022-02-28 10:19:26 +01:00
runtime_stm32l4x5.go Revert "all: move stm32 files to separate repository" 2022-02-28 10:19:26 +01:00
runtime_stm32l5x2.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_stm32wlx.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_tinygoriscv.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_tinygoriscv64.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_tinygoriscv_qemu.go os, runtime: enable os.Stdin for baremetal target 2022-06-01 07:56:25 +02:00
runtime_tinygowasm.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_unix.go avr: fix time.Sleep() in init code 2022-01-02 19:41:44 +01:00
runtime_wasm_js.go wasm: support -scheduler=none 2021-11-17 19:03:20 +01:00
runtime_wasm_js_scheduler.go wasm: support -scheduler=none 2021-11-17 19:03:20 +01:00
runtime_wasm_wasi.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
runtime_windows.go avr: fix time.Sleep() in init code 2022-01-02 19:41:44 +01:00
scheduler.go internal/task: remove coroutines 2022-01-19 14:42:02 -05:00
scheduler_any.go avr: fix time.Sleep() in init code 2022-01-02 19:41:44 +01:00
scheduler_none.go avr: fix time.Sleep() in init code 2022-01-02 19:41:44 +01:00
scheduler_tasks.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
slice.go compiler, runtime: add layout parameter to runtime.alloc 2021-11-02 22:16:15 +01:00
stack.go runtime: add stubs for Func.FileLine and Frame.PC 2022-01-18 14:38:13 +01:00
string.go cgo: add support for C.CString and related functions 2021-11-24 21:09:29 +01:00
symtab.go runtime: add stubs for Func.FileLine and Frame.PC 2022-01-18 14:38:13 +01:00
sync.go all: basic support for the os package 2018-09-16 13:01:03 +02:00
time_nxpmk66f18.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00
wait_other.go all: update build constraints to Go 1.17 2022-02-04 07:49:46 +01:00