tinygo/compiler
Ayke van Laethem d8cc48b09b compiler: remove ir package
This package was long making the design of the compiler more complicated
than it needs to be. Previously this package implemented several
optimization passes, but those passes have since moved to work directly
with LLVM IR instead of Go SSA. The only remaining pass is the SimpleDCE
pass.

This commit removes the *ir.Function type that permeated the whole
compiler and instead switches to use *ssa.Function directly. The
SimpleDCE pass is kept but is far less tightly coupled to the rest of
the compiler so that it can easily be removed once the switch to
building and caching packages individually happens.
2021-01-24 15:39:15 +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
testdata compiler: test float to int conversions and fix upper-bound calculation 2021-01-19 14:02:32 +01:00
asserts.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
atomic.go compiler: add support for atomic operations 2020-05-28 15:11:46 +02:00
calls.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
channel.go compiler: support all kinds of deferred builtins 2021-01-24 09:28:09 +01:00
compiler.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
compiler_test.go compiler: test float to int conversions and fix upper-bound calculation 2021-01-19 14:02:32 +01:00
defer.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
errors.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
func.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
gc.go compiler: track the result of string concatenation 2020-04-02 14:04:25 +02:00
goroutine.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
inlineasm.go arm64: Add support for system calls (SVC) 2020-10-03 20:07:51 +02:00
interface.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
interrupt.go compiler: remove ir package 2021-01-24 15:39:15 +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
passes.go compiler: remove ir package 2021-01-24 15:39:15 +01:00
sizes.go compiler: unexport some exported symbols 2020-04-13 09:24:57 +02:00
symbol.go compiler: remove ir package 2021-01-24 15:39:15 +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