Richard Feldman
e8e1d0457f
Update mono tests
2023-08-14 20:06:04 -04:00
Richard Feldman
15a6bc34f4
Merge remote-tracking branch 'origin/main' into inspect-builtin
2023-08-14 15:03:27 -04:00
Richard Feldman
08e7b52ddc
Update mono tests
2023-08-10 23:34:23 -04:00
Richard Feldman
2da41be29f
Merge remote-tracking branch 'origin/main' into abilities-syntax
2023-08-10 20:36:01 -04:00
Folkert
4c17caa90d
update mono tests
2023-08-08 18:39:54 +02:00
Anton-4
44941db349
Merge pull request #5715 from roc-lang/str-replace
...
Don't have Str.replace functions return Result
2023-08-01 11:07:07 +02:00
Richard Feldman
4cb3a06246
Update mono
2023-07-31 09:49:54 -04:00
Folkert
cdc90f8495
update mono tests
2023-07-30 18:48:37 +02:00
Folkert
99fcbd8d5f
update mono test
2023-07-25 09:52:54 +02:00
Ayaz
b36ad76cdd
Merge pull request #5576 from roc-lang/spike-erasure
...
Implement function erasure
2023-07-17 03:27:29 -05:00
Folkert
48fa4f7a8e
When possible, prefer NonNullableUnwrapped over NullableWrapped
...
e.g. in the scenario of `[ A Str, B, C, D ]`, rather than having one tag be nullable, we want
to store the tag id in the pointer. This generally saves 8 bytes for
every allocation, and prevents an allocations for all tags except A.
2023-07-16 20:06:46 +02:00
Ayaz Hafiz
fea41000e5
Update mono tests
2023-07-12 17:00:55 -05:00
Ayaz Hafiz
44c4797d9a
Parameterize program solving on a FunctionKind
...
This new flag determines whether we should introduce a new kind to
represent lambda sets, or whether lambdas should be erased. The latter
is not yet implemented.
2023-07-12 13:53:50 -05:00
Folkert
ef39bad7c6
auto clippy fixes
2023-07-10 18:27:08 +02:00
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
Folkert
4a9514d2c4
rough implementation
2023-06-24 14:49:46 +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
Folkert
ed3551a14c
make more mono tests use larger stack
2023-06-10 23:58:42 +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
Bryce Miller
0132df9b5a
merge main
2023-06-10 15:04:25 -04: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
Bryce Miller
e463ccf4a6
merge main
2023-06-07 20:36:54 -04: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
4e690103b0
Use larger stacks for some mono tests
2023-06-06 16:05:12 -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