Commit graph

3358 commits

Author SHA1 Message Date
Folkert
843f5b15e5
bitshifts for the dev backend 2023-01-27 11:23:51 +01:00
Christoph Rüßler
1b023f828f
dev backend: implement subWrap for all integer types 2023-01-27 10:27:50 +01:00
Folkert de Vries
081c61ead6
Merge pull request #4962 from thehabbos007/list-reserve-append
gen_dev: add `List.reserve` and `List.append` using zig builtins
2023-01-26 23:43:27 +01:00
Folkert
a77f137a9d
fix bug in Str.trim 2023-01-26 22:52:14 +01:00
Ayaz
a6cbc84729
Merge pull request #4970 from roc-lang/list-concat-use-later
fix memory leak in List.concat
2023-01-26 15:32:45 -06:00
Ayaz
0672879fff
Merge pull request #4965 from roc-lang/recursive-layouts-rec-by-default
Support equivalence for finding lambda sets
2023-01-26 15:20:59 -06:00
Ahmad Sattar
918d9d2308
Fix clippy lints 2023-01-26 20:32:47 +01:00
Folkert
0af11c210e
fix memory leak in List.concat 2023-01-26 20:31:33 +01:00
Brian Carroll
e0b5247f3e
mono code_gen_help: decref should use element alignment, not List alignment 2023-01-26 20:05:16 +01:00
Brian Carroll
c2faaef092
test_gen: enable Dict tests for gen_wasm 2023-01-26 20:05:16 +01:00
Brian Carroll
7228502965
mono: delete is_rc_implemented_yet, because everything is implemented! 2023-01-26 20:05:16 +01:00
Folkert de Vries
212dfdf842
Merge pull request #4963 from roc-lang/recursive-ptr-propogate
Get rid of WhenRecursive
2023-01-26 20:03:43 +01:00
Ahmad Sattar
e71ea37d30
Use immutable List.reserve variant 2023-01-26 13:10:26 +01:00
Ahmad Sattar
e70b491816
gen_dev: more tests for append 2023-01-26 10:22:53 +01:00
Joshua Warner
a1cd114198
Add a Malformed trait, and assert that 'passing' tests don't produce a malformed result 2023-01-25 21:01:05 -08:00
Ayaz Hafiz
6193f0be85
Turn test back on 2023-01-25 18:06:11 -06:00
Ayaz Hafiz
a294cae9cd
Don't store recursive unions by recursive pointer head-on 2023-01-25 18:05:43 -06:00
Ayaz Hafiz
36beda63ba
Lints 2023-01-25 18:00:32 -06:00
Ayaz Hafiz
478d4a2d44
Support lambda sets with recursive pointers and their equivalence-checking 2023-01-25 17:57:49 -06:00
Ayaz Hafiz
fa47e82d72
Implement equivalence of lambda sets 2023-01-25 17:20:42 -06:00
Ayaz Hafiz
61b11c9882
Single-threaded layout interner should resolve recursive pointer 2023-01-25 17:19:39 -06:00
Ayaz Hafiz
44acb7e047
Update recursive layout tests 2023-01-25 17:19:14 -06:00
Ayaz Hafiz
0cd448eab4
Start ir-checking quicksort_help again
Closes #4694
2023-01-25 16:28:53 -06:00
Ayaz Hafiz
aab626bf3f
Remove resolve_recursive_layout 2023-01-25 16:21:05 -06:00
Ayaz Hafiz
7754cc553c
Turn the ir-checker back on 2023-01-25 16:18:47 -06:00
Ayaz Hafiz
c9afbce053
Add an up-to-isomorphism equivalence checker for layouts 2023-01-25 16:17:30 -06:00
Ayaz Hafiz
cb00619ce3
Return normalized representation of recursive union as the rec ptr 2023-01-25 15:16:48 -06:00
Ayaz Hafiz
01ef3ffd02
Disable ir-check for now 2023-01-25 15:16:37 -06:00
Ayaz Hafiz
741b1a1bd5
Always show one level of unions when printing layouts 2023-01-25 15:16:06 -06:00
Ayaz Hafiz
3382be6cb9
Chase recursive layouts as appropriate 2023-01-25 15:10:56 -06:00
Ayaz Hafiz
673ca9a02f
Clippy 2023-01-25 13:33:32 -06:00
Ayaz Hafiz
ae7c899e51
Lift up more layouts 2023-01-25 13:14:38 -06:00
Ayaz Hafiz
3c8b68d3bb
Lift up insertions of layouts 2023-01-25 13:12:38 -06:00
Ayaz Hafiz
d2e247ed6e
Remove unused var 2023-01-25 13:03:31 -06:00
Ayaz Hafiz
f451ba49f1
Toss out when-recursive from llvm backend 2023-01-25 12:48:06 -06:00
Ahmad Sattar
0adb38beca
Add List.append implementation for generic64 2023-01-25 19:47:11 +01:00
Ahmad Sattar
9b525143cb
Add List.reserve implementation for generic64 2023-01-25 19:46:54 +01:00
Ayaz Hafiz
a1ebfa30f8
Remove unused variable 2023-01-25 12:33:01 -06:00
Ayaz Hafiz
7159eeabcd
Toss out when-recursive in alias analysis 2023-01-25 12:30:32 -06:00
Folkert
3417a0e059
fix silent merge request wrt record accessors 2023-01-25 00:02:19 +01:00
Ayaz
ad84e02abf
Merge pull request #4950 from roc-lang/keep-recptr-index
Initial support for linking recursive pointer layouts back to their source layouts
2023-01-24 14:42:00 -06:00
Folkert de Vries
8e5efe67b4
Merge pull request #4912 from roc-lang/remove-polymorphic-expression-compilation
Rip out polymorphic expression compilation
2023-01-24 21:35:08 +01:00
Folkert de Vries
7aaf0f3822
Merge pull request #4916 from roc-lang/rust1_65
upgrade to rust 1.65 and clippy fixes
2023-01-24 14:14:10 +01:00
Brian Carroll
ac45fa2bba
Merge pull request #4683 from roc-lang/gen-wasm-shr-128
gen_wasm: Implement u128 right shift by delegating to compiler_rt
2023-01-24 00:36:27 +00:00
Ayaz Hafiz
7f284a753b
Lints 2023-01-23 17:09:05 -06:00
Ayaz Hafiz
8ad185fd1a
opaque pointers fit in a register in x86 2023-01-23 17:08:47 -06:00
Brian Carroll
5179057fc5
gen_wasm: implement NumIntCast for i128 2023-01-23 22:39:24 +00:00
Brian Carroll
a249e14ee5
builtins: restore nicer hash code for Dict 2023-01-23 22:39:24 +00:00
Ayaz
a7c415dc35
Merge pull request #4940 from joshuawarner32/tuple-solve
Initial implementation of tuples in type checking
2023-01-23 16:25:35 -06:00
Ayaz Hafiz
efd7d71dc4
Use Layout::NAKED_RECURSIVE_PTR and update comments 2023-01-23 16:10:54 -06:00