tinygo/compiler
Ayke van Laethem 0704794def compiler: add object layout information to heap allocations
This commit adds object layout information to new heap allocations. It
is not yet used anywhere: the next commit will make use of it.

Object layout information will eventually be used for a (mostly) precise
garbage collector. This is what the data is made for. However, it is
also useful in the interp package which can work better if it knows the
memory layout and thus the approximate LLVM type of heap-allocated
objects.
2021-11-02 22:16:15 +01:00
..
ircheck compiler: move IR checker to separate package 2020-03-21 15:45:25 +01:00
llvmutil compiler, runtime: add layout parameter to runtime.alloc 2021-11-02 22:16:15 +01:00
testdata compiler: add object layout information to heap allocations 2021-11-02 22:16:15 +01:00
alias.go fix export math functions issue 2021-10-03 16:28:34 +02:00
asserts.go compiler: properly implement div and rem operations 2021-10-28 15:55:02 +02:00
atomic.go compiler: work around an ARM backend bug in LLVM 2021-02-03 14:49:41 +01:00
calls.go all: fix staticcheck warnings 2021-09-27 15:47:12 +02:00
channel.go compiler: avoid zero-sized alloca in channel operations 2021-09-09 11:24:52 +02:00
compiler.go compiler: add object layout information to heap allocations 2021-11-02 22:16:15 +01:00
compiler_test.go compiler: add object layout information to heap allocations 2021-11-02 22:16:15 +01:00
defer.go compiler, runtime: add layout parameter to runtime.alloc 2021-11-02 22:16:15 +01:00
errors.go all: fix staticcheck warnings 2021-09-27 15:47:12 +02:00
func.go compiler: add support for recursive function types 2021-10-30 15:55:20 +02:00
gc.go compiler: track the result of string concatenation 2020-04-02 14:04:25 +02:00
goroutine.go compiler: add support for the go keyword on interface methods 2021-10-31 14:17:25 +01:00
inlineasm.go all: fix staticcheck warnings 2021-09-27 15:47:12 +02:00
interface.go compiler: simplify interface lowering 2021-10-31 14:17:25 +01:00
interrupt.go Support chained interrupt handlers 2021-05-25 20:44:49 +02:00
intrinsics.go compiler: move LLVM math builtin support into the compiler 2021-08-10 20:08:27 +02:00
llvm.go compiler: add object layout information to heap allocations 2021-11-02 22:16:15 +01:00
map.go compiler: refactor map operations to use the builder object 2020-03-25 20:17:46 +01:00
sizes.go reflect: implement Sizeof and Alignof for func values 2021-03-29 01:04:11 +02:00
symbol.go compiler: add nounwind attribute 2021-10-25 13:39:54 +02:00
syscall.go compiler: implement syscall.rawSyscallNoError in inline assembly 2021-06-25 16:14:47 +02:00
volatile.go compiler: do not perform nil checking when indexing slices 2020-03-27 07:38:16 +01:00