tinygo/transform
Ayke van Laethem a896f7f218 transform: fix bug in StringToBytes optimization pass
Previously, this pass would convert any read-only use of a
runtime.stringToBytes call to use the original string buffer instead.
This is incorrect: if there are any writes to the resulting buffer, none
of the slice buffer pointers can be converted to use the original
read-only string buffer.

This commit fixes that bug and adds a test to prove the new (correct)
behavior.
2023-09-23 07:48:43 -07:00
..
testdata transform: fix bug in StringToBytes optimization pass 2023-09-23 07:48:43 -07:00
allocs.go all: remove pointer ElementType calls 2022-10-19 22:23:19 +02:00
allocs_test.go all: update _test.go files for ioutil changes 2022-08-07 10:32:23 +02:00
errors.go refactor coroutine lowering and tasks 2020-03-17 12:16:10 +01:00
gc.go transform: remove duplicate if in gc transform 2022-11-18 20:19:47 +01:00
gc_test.go gc: drop support for 'precise' globals 2022-06-01 21:21:30 +02:00
interface-lowering.go compiler,transform: fix for pointer-to-pointer type switches from @aykevl 2023-06-09 17:30:02 +02:00
interface-lowering_test.go compiler: add "target-cpu" and "target-features" attributes 2021-11-10 11:16:13 +01:00
interrupt.go ci: add support for LLVM 15 2022-10-19 22:23:19 +02:00
interrupt_test.go transform: refactor interrupt lowering 2021-11-06 09:40:15 +01:00
llvm.go ci: add support for LLVM 15 2022-10-19 22:23:19 +02:00
maps.go all: move OptimizeMaps to transforms and add tests 2019-09-15 21:26:27 +02:00
maps_test.go all: add LLVM 12 support 2021-11-30 21:53:16 +01:00
optimizer.go all: refactor reflect package 2023-02-17 22:54:34 +01:00
panic.go all: add type parameter to CreateCall 2022-10-19 22:23:19 +02:00
panic_test.go transform: move tests to transform_test package 2021-04-22 19:53:42 +02:00
rtcalls.go transform: fix bug in StringToBytes optimization pass 2023-09-23 07:48:43 -07:00
rtcalls_test.go transform: move tests to transform_test package 2021-04-22 19:53:42 +02:00
stacksize.go transform: add debug information to internal/task.stackSize 2023-03-08 07:09:46 +01:00
stacksize_test.go all: add flag for setting the goroutine stack size 2022-09-15 12:43:51 +02:00
transform.go compiler: add "target-cpu" and "target-features" attributes 2021-11-10 11:16:13 +01:00
transform_test.go all: update _test.go files for ioutil changes 2022-08-07 10:32:23 +02:00
util.go compiler: move OptimizeStringToBytes to transform package 2019-09-22 08:25:50 +02:00