Commit graph

443 commits

Author SHA1 Message Date
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
84a8b69437 generate IR that uses uniqueness 2020-08-11 14:47:14 +02:00
Richard Feldman
8803cb9523 Remove an unnecessary newline diff 2020-08-10 23:22:47 -04:00
Richard Feldman
35e132e6d7 Fix quicksort benchmark 2020-08-10 21:25:47 -04: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
Chad Stearns
76a31fb945 Comply with clippyg 2020-08-10 02:10:04 -04:00
Chad Stearns
331695b85c Rename some indices 2020-08-10 00:53:50 -04:00
Chad Stearns
e65c0cafbb Incrementing index loop helper, deleted some comments, refactored List.concat to avoid some duplicate code work 2020-08-10 00:45:29 -04:00
Chad Stearns
9662ca6bd6 Use bounds_check_comparison more widely 2020-08-09 13:31:39 -04:00
Folkert
d927f1e83c fix merge conflicts 2020-08-09 11:47:44 +02:00
Chad Stearns
8b315d8e4a Moved list code gen into build_list module 2020-08-09 02:30:41 -04:00
Richard Feldman
d4705f2f98
Merge branch 'trunk' into refcount 2020-08-08 19:54:10 -04:00
Folkert
f8143e3e53 perform copy propagation 2020-08-09 00:48:53 +02:00
Folkert
078c6df677 Merge remote-tracking branch 'origin/trunk' into refcount 2020-08-08 22:34:14 +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
Chad Stearns
4e906a5156 No phi node at all, just an conditional branch 2020-08-08 01:26:25 -04:00
Chad Stearns
e47c847118 Entire inner loop happens in phi2 node, rather than phi2 node happening inside loop 2020-08-08 00:44:15 -04:00
Chad Stearns
0e15f75f3b List.join works in all cases 2020-08-08 00:33:05 -04:00
Folkert
55eff50e36 good progress on Lean-based inc/dec 2020-08-07 23:22:59 +02:00
Folkert
2467815cef rework how values from a pattern are assigned 2020-08-07 00:16:17 +02:00
Folkert
f31c116f7c fix warnings in test files 2020-08-06 21:50:22 +02:00
Folkert
0fbcfc7431 fix clippy complaints 2020-08-06 21:39:55 +02:00
Folkert
378fe1d5d1 phase out old mono stuff 2020-08-06 21:05:14 +02:00
Chad Stearns
c73e77b5ef Bring up variables out of inner loop 2020-08-05 23:23:40 -04:00
Folkert
db0bed2fe7 mostly fix issues with patterns/guards/switch/cond 2020-08-06 01:09:42 +02:00
Folkert
dab00f2e2d add Alias expression 2020-08-05 22:45:25 +02:00
Folkert
c18bbe9a63 join points with arguments 2020-08-05 22:33:07 +02:00
Folkert
34f6417fae implement list literals 2020-08-05 16:27:49 +02:00
Folkert
4e55a4bf92 more pattern matching fidling 2020-08-05 16:10:45 +02:00
Chad Stearns
362d3908d5 Fixed dest_elem_ptr not incrementing within inner element inserting loop 2020-08-04 22:54:34 -04:00
Chad Stearns
f4075adf00 Renamed some variables that were copy and pasted 2020-08-04 21:48:53 -04:00
Chad Stearns
ba1feb9330 Fixed problem with index for loop to sum lengths of lists in outer list not initialized to zero 2020-08-04 21:48:37 -04:00
Chad Stearns
60dcad329f Solve memory issue with List.join 2020-08-02 19:15:17 -04:00
Chad Stearns
b9673b68fe Use inner list len for end condition of loop through inner list elements 2020-08-02 19:04:26 -04:00
Chad Stearns
3011bfa7be Fixed some comments 2020-08-02 16:41:39 -04:00
Chad Stearns
4c7503d17e List.join passed LLVM validation 2020-08-02 15:35:03 -04:00
Richard Feldman
6241578831 Fix the type of inner_list_ptr 2020-08-02 15:25:14 -04:00
Chad Stearns
450c36e3c5 List.join loops implemented, but not working 2020-08-02 15:03:12 -04:00
Chad Stearns
e8c49bd7f7 List.push -> List.append 2020-08-01 22:28:48 -04:00
Chad Stearns
a9ab550c10 List.join builtin and unification 2020-08-01 22:28:09 -04:00
Folkert
2a0b010a74 make Tag arguments into symbols 2020-08-01 23:39:11 +02:00
Folkert
a8bfd90a50 introduce Inc 2020-08-01 22:58:29 +02:00
Folkert
5548bf136d conditionally leak memory 2020-08-01 21:37:54 +02:00
Folkert
5d22b6a9cf ensure list elements are aligned 2020-08-01 17:38:59 +02:00
Folkert
f15a50d3fa implement inc and dec for lists 2020-07-31 00:02:36 +02:00
Folkert
4a937b5cc2 allocate lists with a capacity/refcount field at index -1 2020-07-30 14:32:59 +02:00
Folkert
22471167d3 introduce Ownership to list layout 2020-07-30 13:42:47 +02:00