tinygo/transform/testdata
Ayke van Laethem 3edcdb5f0d compiler: do not emit nil checks for loading closure variables
Closure variables are allocated in a parent function and are thus never
nil. Don't do a nil check before reading or modifying the value.

This commit results in a slight reduction in code size in some test
cases: calls.go, channel.go, goroutines.go, json.go, sort.go -
presumably wherever closures are used.
2021-05-26 20:21:08 +02:00
..
allocs.ll transform: do not lower zero-sized alloc to alloca 2021-04-12 08:11:28 +02:00
allocs.out.ll transform: do not lower zero-sized alloc to alloca 2021-04-12 08:11:28 +02:00
allocs2.go compiler: do not emit nil checks for loading closure variables 2021-05-26 20:21:08 +02:00
coroutines.ll arm: automatically determine stack sizes 2020-08-27 19:23:22 +02:00
coroutines.out.ll arm: automatically determine stack sizes 2020-08-27 19:23:22 +02:00
func-lowering.ll compiler: decouple func lowering from interface type codes 2021-04-12 12:07:42 +02:00
func-lowering.out.ll compiler: decouple func lowering from interface type codes 2021-04-12 12:07:42 +02:00
gc-globals.ll transform: do not track const globals 2020-02-24 21:04:50 +01:00
gc-globals.out.ll support WASI target (#1373) 2020-09-29 21:58:03 +02:00
gc-stackslots.ll transform: track 0-index GEPs 2020-07-16 20:50:23 +02:00
gc-stackslots.out.ll support WASI target (#1373) 2020-09-29 21:58:03 +02:00
globals-function-sections.ll compiler: move ApplyFunctionSections to transform package 2020-03-19 19:56:08 +01:00
globals-function-sections.out.ll compiler: move ApplyFunctionSections to transform package 2020-03-19 19:56:08 +01:00
interface.ll transform: split interface and reflect lowering 2021-05-03 20:10:49 +02:00
interface.out.ll transform: split interface and reflect lowering 2021-05-03 20:10:49 +02:00
interrupt-avr.ll avr: fix target triple 2020-06-30 20:48:42 +02:00
interrupt-avr.out.ll avr: fix target triple 2020-06-30 20:48:42 +02:00
interrupt-cortexm.ll all: add compiler support for interrupts 2020-01-20 21:19:12 +01:00
interrupt-cortexm.out.ll main: switch to LLVM 10 2020-04-09 20:23:51 +02:00
maps.ll all: move OptimizeMaps to transforms and add tests 2019-09-15 21:26:27 +02:00
maps.out.ll all: move OptimizeMaps to transforms and add tests 2019-09-15 21:26:27 +02:00
panic.ll compiler: move ReplacePanicsWithTrap pass to transforms 2019-11-16 18:41:28 +01:00
panic.out.ll compiler: move ReplacePanicsWithTrap pass to transforms 2019-11-16 18:41:28 +01:00
reflect-implements.ll transform: optimize reflect.Type Implements() method 2021-03-28 14:00:37 +02:00
reflect-implements.out.ll transform: optimize reflect.Type Implements() method 2021-03-28 14:00:37 +02:00
reflect.go transform: split interface and reflect lowering 2021-05-03 20:10:49 +02:00
stacksize.ll arm: automatically determine stack sizes 2020-08-27 19:23:22 +02:00
stacksize.out.ll arm: automatically determine stack sizes 2020-08-27 19:23:22 +02:00
stringequal.ll transform: optimize string comparisons against "" 2021-03-18 17:22:00 +01:00
stringequal.out.ll transform: optimize string comparisons against "" 2021-03-18 17:22:00 +01:00
stringtobytes.ll compiler: move OptimizeStringToBytes to transform package 2019-09-22 08:25:50 +02:00
stringtobytes.out.ll compiler: move OptimizeStringToBytes to transform package 2019-09-22 08:25:50 +02:00
wasm-abi.ll compiler: move wasm ABI workaround to transform package 2020-01-28 19:29:09 +01:00
wasm-abi.out.ll main: switch to LLVM 10 2020-04-09 20:23:51 +02:00