Commit graph

56 commits

Author SHA1 Message Date
Folkert
f9cf4ea371 recursive tag unions 2020-08-31 14:29:09 +02:00
Folkert
ba186bfe09 can store, but not load recursive fields 2020-08-22 16:01:04 +02:00
Folkert
0e5283efd2 Merge remote-tracking branch 'origin/trunk' into infer-borrow 2020-08-19 23:56:29 +02:00
Folkert
fa5e5ab201 back to a working version 2020-08-19 23:42:45 +02:00
Richard Feldman
608c4eebd9 Drop unnecessary arg_basic_types 2020-08-16 16:17:10 -04:00
Folkert
380e34d296 Merge remote-tracking branch 'origin/trunk' into tail-call-elimination 2020-08-12 15:46:50 +02:00
Folkert
7603225fca generate return earlier, causing more TCE 2020-08-11 22:30:34 +02:00
Richard Feldman
12ed20b5cd Use fast calling convention internally 2020-08-11 09:02:26 -04:00
Folkert
ac6d72d077 fix some test failures 2020-08-10 21:41:47 +02:00
Folkert
79ea62b9d4 make uniqueness change codegen 2020-08-10 21:13:57 +02:00
Folkert
8f7d842d41 apply optimization passes 2020-08-10 13:34:28 +02:00
Folkert
4caef70668 Merge remote-tracking branch 'origin/trunk' into refcount 2020-08-09 13:49:13 +02:00
Richard Feldman
3fe2a4e3fd Drop unused jump_counter 2020-08-08 19:53:21 -04:00
Folkert
078c6df677 Merge remote-tracking branch 'origin/trunk' into refcount 2020-08-08 22:34:14 +02:00
Folkert
5082d40ff5 clean up test imports 2020-08-08 21:56:43 +02:00
Folkert
a015dad566 hook up list inc/dec 2020-08-08 21:42:14 +02:00
Folkert
a248a92d9f generate inc/dec in procs 2020-08-08 18:54:28 +02:00
Richard Feldman
c8e647ccfc Use is_zero_sized to remove lots of ptr_bytes 2020-08-07 20:08:06 -04:00
Folkert
f31c116f7c fix warnings in test files 2020-08-06 21:50:22 +02:00
Folkert
378fe1d5d1 phase out old mono stuff 2020-08-06 21:05:14 +02:00
Folkert
5ff5def504 rename test macros 2020-08-06 18:42:28 +02:00
Folkert
dab6621127 opt tests 2020-08-06 17:05:18 +02:00
Folkert
4e55a4bf92 more pattern matching fidling 2020-08-05 16:10:45 +02:00
Folkert
5548bf136d conditionally leak memory 2020-08-01 21:37:54 +02:00
Richard Feldman
2babe67998 Fix stack overflow in monomorphization 2020-07-16 19:28:25 -04:00
Richard Feldman
c6a0970b73 Defer specialization by one level only 2020-07-12 23:43:55 -04:00
Richard Feldman
c2bc98ea4b Only use pending specializations for other modules 2020-07-12 22:53:03 -04:00
Richard Feldman
9305ecc9bd Specify which test passed or failed 2020-07-06 21:25:54 -04:00
Richard Feldman
b5ad6e17b4 Don't print subs on error
It's way too verbose and unhelpful!
2020-07-06 21:23:59 -04:00
Richard Feldman
e559deecbf Improve LLVM verification error messages 2020-07-05 22:24:04 -04:00
Richard Feldman
46c43da1de Improve debug output 2020-06-25 01:25:33 -04:00
Richard Feldman
e0fc71526e Clean up some debugging info 2020-06-25 00:28:01 -04:00
Richard Feldman
b97c94c2da Fix infinite loop 2020-06-21 22:29:28 -04:00
Richard Feldman
887ec9860a wip 2020-05-26 21:19:46 -04:00
Richard Feldman
42e3d35564 Use specialize_all 2020-05-26 21:18:25 -04:00
Richard Feldman
bf11262e61 Move layout_id from mono to gen
This is because it's actually important that mono never use this.
It should only be used in gen, because it's only safe to use
synchronously, and it's important that mono be done in parallel.

Moving it to gen guarantees that mono will not use it, even accidentally!
2020-05-10 15:13:18 -04:00
Richard Feldman
6e05ba816f Have CallByName use Layout 2020-05-10 15:13:18 -04:00
Richard Feldman
8572879e0d Remove unused procs argument 2020-05-09 22:41:59 -04:00
Richard Feldman
c49abfe2de Add layout to CallByName 2020-05-09 22:41:59 -04:00
Richard Feldman
510ab36f51 Use LayoutCache to avoid recomputing layouts 2020-05-09 22:11:32 -04:00
Richard Feldman
7e7c6ef4af Drop obsolete symbol_counter field 2020-05-04 20:32:21 -04:00
Richard Feldman
ee31eac0c5 Code gen toplevel module functions 2020-05-01 19:30:55 -04:00
Richard Feldman
52a3e0afb5 Don't fail gen tests for unused warnings 2020-04-26 09:33:12 -04:00
Richard Feldman
d4b1c7e68a Eagerly report more problems 2020-04-26 09:04:27 -04:00
Richard Feldman
a2e6c4ba12 Restore some things 2020-04-26 08:59:52 -04:00
Richard Feldman
afbe871e6d wip 2020-04-26 08:45:41 -04:00
Richard Feldman
53ecf6df3e Drop some unnecessary parens 2020-04-18 15:32:17 -04:00
Richard Feldman
ea713023e8 Add explicit OptLevel to add_passes 2020-04-16 20:26:08 -04:00
Richard Feldman
5980bc38da Merge remote-tracking branch 'origin/trunk' into order-of-ops 2020-04-15 05:03:42 -04:00
Folkert
97c10e1211 setup for mono reports 2020-04-12 01:56:57 +02:00