Commit Graph

698 Commits

Author SHA1 Message Date
Jared Ramirez
b3d530f2ae Build bitcode with zig 🎉 2020-10-26 17:37:02 -07:00
Jared Ramirez
6278a19c35 Use zig to build bitcode 2020-10-25 20:22:30 -07:00
Jared Ramirez
48f8aad180 Compile bitcode as part of build script 2020-10-25 14:09:53 -07:00
Jared Ramirez
6253ac15e4 Use differnt atan test based on os 2020-10-25 12:11:23 -07:00
Richard Feldman
21d4f8026e
Merge branch 'trunk' into convert-bitcode-gen-to-c 2020-10-25 14:17:17 -04:00
Richard Feldman
17b2eebcfc REVERT THIS! Temporarily disable exception tests.
These currently break on Linux, but pass on macOS.

They worked fine with JITExecutionEngine on Linux,
but JITExecutionEngine failed on macOS.
2020-10-25 01:42:10 -04:00
Richard Feldman
3d7a265c5f Load a dynamic library in the repl 2020-10-25 01:42:10 -04:00
Richard Feldman
14c8a00f9d Don't link Scrti.o when doing dynamic linking 2020-10-25 01:42:10 -04:00
Richard Feldman
ac46d84c60 use RelocMode::PIC 2020-10-25 01:42:10 -04:00
Richard Feldman
468deebaa3 Clean up dummy test 2020-10-25 01:42:10 -04:00
Richard Feldman
737eee874f Fix tests 2020-10-25 01:42:10 -04:00
Richard Feldman
d0a9db06f5 Add Into instance for OptLevel 2020-10-25 01:42:10 -04:00
Richard Feldman
b4377d4d67 Get a basic dylib linking started 2020-10-25 01:41:55 -04:00
Jared Ramirez
d82d6b6fe9 Convert builtins to C 2020-10-24 12:22:51 -07:00
Richard Feldman
e8f1201937 Use libloading to load dylibs 2020-10-24 12:01:34 -04:00
Folkert
75332bd109 re-enable tests 2020-10-21 13:47:23 +02:00
Folkert
4db09b10aa refactor ClosureLayout 2020-10-21 13:38:46 +02:00
Folkert
c8c1a0678a code gen for variably-sized closures 2020-10-21 13:01:27 +02:00
Folkert
b0121097c9 store closures in data structures 2020-10-20 20:01:01 +02:00
Folkert
3408a31453 preparations for specializing closures 2020-10-20 00:33:10 +02:00
Folkert
33ff36daad make things work by removing type signatures 2020-10-19 00:28:14 +02:00
Folkert
847a1be65e comment out type aliases for the unique version 2020-10-18 23:53:43 +02:00
Folkert
a88f78d6b7 comment tests where monomorphization doesn't work right 2020-10-18 22:49:21 +02:00
Folkert
b0ef8b9b07 clarify how we deal with a closure layout 2020-10-18 21:05:48 +02:00
Folkert
b26f778ee0 code gen for closures that are by-unification, not because they capture anything 2020-10-18 20:50:51 +02:00
Folkert
9cecfe3558 remove closes_over field 2020-10-18 20:45:28 +02:00
Folkert
39f52f22fa add more closure tests 2020-10-18 20:11:18 +02:00
Folkert
1439c1a21d clippy complaints 2020-10-17 22:37:15 +02:00
Folkert
e66c84d2de update bitcode 2020-10-17 22:05:07 +02:00
Folkert
607799b96e steps towards closures and Effects 2020-10-17 20:53:57 +02:00
Folkert
edfc96628e WIP 2020-10-17 14:53:57 +02:00
Folkert
6227a3480e cleanup 2020-10-17 02:51:42 +02:00
Folkert
1708484eb5 fix mono tests 2020-10-17 02:39:44 +02:00
Folkert
8b490b6221 make closure layout more robust 2020-10-17 01:48:55 +02:00
Folkert
cbe78593c2 add extra pass that further trims down the captured symbols 2020-10-17 00:17:55 +02:00
Folkert
752a40a23c fix or ignore gen tests 2020-10-16 21:19:25 +02:00
Folkert
40ffca2b7b IT WORKS 2020-10-16 00:18:40 +02:00
Folkert
d0f031fe6c use captured_symbols to determine the closure type 2020-10-15 16:17:59 +02:00
Folkert
6318f032df first shot at implementing closure layout 2020-10-15 16:03:56 +02:00
Folkert
ca2efc27bd Merge remote-tracking branch 'origin/trunk' into sized-functions-inference 2020-10-15 14:34:32 +02:00
Folkert
02a396d08a use fast calling convention 2020-10-15 01:46:28 +02:00
Folkert
7f1dd80392 hook up size inference, WIP 2020-10-14 22:55:25 +02:00
Folkert
729e16cad9 clippy 2020-10-14 21:42:22 +02:00
Folkert
ba99b96164 add repl test for type error 2020-10-14 20:53:19 +02:00
Folkert
cb9ce5e8d7 use modules in the repl 2020-10-14 17:48:56 +02:00
Folkert
b3e3eb24a8 missed a thing 2020-10-14 17:07:19 +02:00
Folkert
106024b4bb fix bug converting recursive tag union to solved type 2020-10-14 16:57:43 +02:00
Folkert
62ed1508d5 fix mistake in tests
no idea why this passed before, it clearly shouldn't
2020-10-14 16:37:53 +02:00
Folkert
8338296da2 add top-level thunks to the scope everywhere 2020-10-14 15:03:41 +02:00
Folkert
07e29eb34c initial implementation 2020-10-14 14:43:59 +02:00