tinygo/compiler
Ayke van Laethem 6ad631539d compiler: fix undefined behavior in wordpack
Previously, EmitPointerPack would generate an out-of-bounds read from an
alloca. This commit fixes that by creating an alloca of the appropriate
size instead of using the size of the to-be-packed data (which might be
smaller than a pointer).

I discovered this error while working on a rewrite of the interp
package, which checks for out-of-bounds reads and writes. There I
discovered this issue when the image package was compiled.
2020-12-22 15:54:23 +01:00
..
ircheck compiler: move IR checker to separate package 2020-03-21 15:45:25 +01:00
llvmutil compiler: fix undefined behavior in wordpack 2020-12-22 15:54:23 +01:00
asserts.go compiler: implement spec-compliant shifts 2020-03-28 17:35:19 +01:00
atomic.go compiler: add support for atomic operations 2020-05-28 15:11:46 +02:00
calls.go compiler: add parameter names to IR 2020-04-21 08:54:39 +02:00
channel.go compiler/runtime: move the channel blocked list onto the stack 2020-06-08 19:59:57 +02:00
compiler.go compiler: implement negate for complex numbers 2020-10-28 07:38:51 +01:00
defer.go compiler: implement func value and builtin defers 2020-07-31 01:48:57 +02:00
errors.go compiler: rename Compiler.getValue -> builder.getValue 2020-03-25 20:17:46 +01:00
func.go compiler: add parameter names to IR 2020-04-21 08:54:39 +02:00
gc.go compiler: track the result of string concatenation 2020-04-02 14:04:25 +02:00
goroutine.go arm: automatically determine stack sizes 2020-08-27 19:23:22 +02:00
inlineasm.go arm64: Add support for system calls (SVC) 2020-10-03 20:07:51 +02:00
interface.go compiler: add parameter names to IR 2020-04-21 08:54:39 +02:00
interrupt.go compiler: refactor function calling 2020-03-25 20:17:46 +01:00
intrinsics.go compiler,runtime: translate memzero calls to LLVM memset intrinsics 2020-03-27 21:01:59 +01:00
llvm.go compiler/llvm.go: fix typo 2020-04-13 16:07:35 +02:00
map.go compiler: refactor map operations to use the builder object 2020-03-25 20:17:46 +01:00
sizes.go compiler: unexport some exported symbols 2020-04-13 09:24:57 +02:00
symbol.go compiler: refactor public interface 2020-03-25 20:17:46 +01:00
syscall.go compiler: refactor function calling 2020-03-25 20:17:46 +01:00
volatile.go compiler: do not perform nil checking when indexing slices 2020-03-27 07:38:16 +01:00