Folkert
bb97c384bb
preserve semantics in the glue generation
2023-07-09 15:47:28 +02:00
Ayaz Hafiz
a5e1558a6e
Do not drop uninhabited captures from lambda sets
...
Previously, we would drop uninhabited captures from lambda sets' runtime
representations, which meant sets like
```
[L1 {a: Str}, L2 {a: []}]
```
had runtime representation
```
{Str}
```
rather than
```
Union({Str}, {[]})
```
if we drop unreachable lambdas from the representation, then the
reachable lambdas are somewhat more efficient to compile (as there are
less material tag options), but the compiler complexity increases
because we must represent voided capture sets in the lambda set.
Even if a lambda has voided captures, we must specialize it, because
failing to do so opens us up to losing relevant specializations needed
later on. See 2f7020aa31
for a
previous occurence of that.
As such, simply keep voided layouts in place during lambda set
compilation. The optimizer should elide them anyway.
2023-06-29 17:32:50 -05:00
Anton-4
c4b0a2ec29
Merge pull request #5620 from roc-lang/dict-set
...
Add some missing Dict and Set functions
2023-06-29 12:06:49 +02:00
Richard Feldman
437fb7e46c
Update mono tests
2023-06-27 14:53:48 -04:00
Folkert
7e380d9533
update mono tests
2023-06-27 19:39:26 +02:00
Folkert
ae47cc5171
in TRMC, still apply normal TCE
2023-06-24 19:45:44 +02:00
Folkert
654cf7b861
changes after review
2023-06-24 14:49:57 +02:00
Folkert
f7104bfe54
update mono tests
2023-06-24 14:49:55 +02:00
Folkert
bc64e4b92b
fix layout check issue
2023-06-24 14:49:53 +02:00
Folkert
f797b59d82
mono test
2023-06-24 14:49:51 +02:00
Folkert
9c85fb90d3
fix bugs
2023-06-24 14:49:47 +02:00
J.Teeuwissen
495bbfd944
updated test
2023-06-19 22:51:10 +02:00
J.Teeuwissen
78c1855b66
Fixed logic
2023-06-19 17:41:57 +02:00
Kilian Vounckx
402a89237d
Add Num.bitwiseNot function
2023-06-17 20:08:33 +02:00
KilianVounckx
0dd8bb9841
Merge branch 'roc-lang:main' into num-constants
2023-06-17 15:09:30 +02:00
Ayaz Hafiz
5488b3a3eb
Fix mono tests
2023-06-16 10:30:44 -05:00
Kilian Vounckx
ab0969f7bb
Add fractional constants
2023-06-15 20:31:17 +02:00
Ayaz Hafiz
c91b82198d
Use correct variable when compiling dbg continuation
...
Closes #5479
2023-06-13 16:45:02 -05:00
Folkert de Vries
79e9ba3dd1
Merge pull request #5529 from JTeeuwissen/joinpoint-specialisation
...
Joinpoint specialisation
2023-06-13 18:42:02 +02:00
J.Teeuwissen
fbf3faeaf1
Simplified logic
2023-06-10 23:55:14 +02:00
J.Teeuwissen
46bff75517
progress
2023-06-10 23:55:09 +02:00
J.Teeuwissen
d735742fdb
used resulting incremented_symbols
2023-06-10 23:54:00 +02:00
J.Teeuwissen
94fb89bde4
Start drop specialisation for joinpoints
2023-06-10 23:53:19 +02:00
Fábio Beirão
250c50e018
Update the test_mono/generated folder
2023-06-09 18:09:37 +02:00
Luke Boswell
15b7b62c4f
merge remote/main, fix merge conflicts, update mono
2023-06-08 19:41:53 +10:00
Ayaz
c7f5007cd8
Merge pull request #5400 from roc-lang/semantic-layouts-for-newtypes
...
Implement semantic layouts for newtypes
2023-06-07 05:39:20 -05:00
J.Teeuwissen
36f90c05e2
updated Stmt::Dbg
2023-06-07 08:34:36 +02:00
Ayaz Hafiz
43259b9ad6
Compile dbgs that appear in expects
...
Closes #5480
2023-06-06 18:07:34 -05:00
Ayaz Hafiz
c0e52f9e54
Fix mono tests
2023-06-06 16:04:43 -05:00
Ayaz Hafiz
9187286580
Fix mono output
2023-06-06 16:04:42 -05:00
Ayaz Hafiz
a6b3656471
Begin generating newtype wrappers for struct layouts
2023-06-06 16:04:41 -05:00
Luke Boswell
c1ff49be6c
change just Json module name
2023-06-04 17:37:01 +10:00
Kilian Vounckx
7f5e6299ab
Generate tests
2023-06-01 18:40:31 +02:00
KilianVounckx
8b85f966fd
Merge branch 'roc-lang:main' into list-update
2023-06-01 11:16:33 +02:00
J.Teeuwissen
93ea086115
Merge branch 'main' into record-update-index-top
2023-05-30 10:47:19 +02:00
Kilian Vounckx
d43a78d000
Add update to symbols table and auto generate test_mono
2023-05-30 09:07:15 +02:00
Folkert de Vries
ef05ec6906
Merge pull request #5452 from JTeeuwissen/save-construction-children
...
Add construction (Struct/TagId/List/Box) to known parent/child relations
2023-05-29 22:21:44 +02:00
Brendan Hansknecht
fa57788c09
Merge pull request #5460 from roc-lang/dict-tuple
...
switch Dict to real tuples
2023-05-29 15:00:38 +00:00
J.Teeuwissen
b7a7a735fc
keep inc env always, but set count to 0.
2023-05-29 12:09:18 +02:00
J.Teeuwissen
079290dcaf
Keep 0 in counting map
2023-05-29 10:54:09 +02:00
J.Teeuwissen
e29af85dcf
Fixed tests
2023-05-29 08:39:59 +02:00
J.Teeuwissen
6e6e1ce833
Merge remote-tracking branch 'origin/main' into save-construction-children
2023-05-28 20:08:22 +02:00
Folkert de Vries
cf20c74eb9
Merge pull request #5436 from JTeeuwissen/drop-specialize-over-matches
...
allow lowlevel and match
2023-05-28 19:59:14 +02:00
J.Teeuwissen
c6e7d56fb6
For single update
2023-05-27 21:29:32 +02:00
J.Teeuwissen
16da790fac
Order by index + clippy
2023-05-27 14:52:25 +02:00
J.Teeuwissen
378a298b45
move record index to start of update
2023-05-27 14:42:37 +02:00
Brendan Hansknecht
9eb7019e73
update mono and uitests
2023-05-26 15:44:31 -07:00
J.Teeuwissen
b0705a00ad
saved info and added test
2023-05-26 15:56:18 +02:00
Brendan Hansknecht
0c13564ad7
update mono and uitests
2023-05-25 11:01:14 -07:00
Ayaz Hafiz
7f639e485a
Update mono tests
2023-05-24 14:14:14 -05:00