Commit Graph

27360 Commits

Author SHA1 Message Date
Brendan Hansknecht
0e842fd844
update formatting, uitest, and mono_test 2023-12-11 18:22:53 -08:00
Brendan Hansknecht
65ce79c1c5
correct Dict.update to use proper index 2023-12-11 15:35:19 -08:00
Richard Feldman
95a4bb988c
Merge pull request #6255 from roc-lang/glue-panic-handler
make glue use a setjmp/longjmp panic handler
2023-12-11 16:33:26 -05:00
Folkert de Vries
b9425bfc55
Merge pull request #6254 from roc-lang/testing-for-nightlies
Remove early DCE of bitcode
2023-12-11 21:54:29 +01:00
Richard Feldman
67d7385b9a
Clean up some obsolete asserts 2023-12-11 15:15:59 -05:00
Folkert
d2d87949c8
remove random write to pointer 2023-12-11 21:07:15 +01:00
Richard Feldman
5aab05aede
Change Running program... message in glue 2023-12-11 14:36:37 -05:00
Richard Feldman
e1697a910c
cargo fmt 2023-12-11 14:35:49 -05:00
Folkert
590282b14f
make glue use a setjmp/longjmp panic handler 2023-12-11 20:33:21 +01:00
Brendan Hansknecht
fb049b661a
Remove early DCE of builtins
Early DCE was sometimes cleaning up functions that we actaully still needed.
At some point we can come back to it and try to properly protect all special functions.
Until then, this still enables DCE, but it runs later with the full generated Roc module.
2023-12-11 10:44:57 -08:00
Brendan Hansknecht
3120dee509
Merge pull request #6238 from roc-lang/dict-follow-up
Dict follow up and addition of releaseExcessCapacity
2023-12-11 02:15:44 -08:00
Brendan Hansknecht
ec3b916c8f
Merge pull request #6249 from roc-lang/refcount-ptr-naming-cleanup
Cleanup list and str builtin naming from refcount to allocation
2023-12-11 00:19:35 -08:00
Brendan Hansknecht
49fb5a6e08
Merge pull request #6241 from ptaszor3/dbg_formatter_issue
Fixed format for 'dbg'
2023-12-10 20:47:16 -08:00
Brendan Hansknecht
f262102299
cleanup list and str builtin naming from refcount to allocation 2023-12-10 19:52:28 -08:00
Brendan Hansknecht
156a462f1d
update uitest and mono_test 2023-12-10 11:24:22 -08:00
ptaszor3
0019e9f43d
Merge branch 'main' into dbg_formatter_issue 2023-12-10 20:01:57 +01:00
ptaszor3
58b73ae257
Fixed some formatting 2023-12-10 19:58:23 +01:00
Luke Boswell
648ccd463d
handle TrailingOperator error 2023-12-10 19:58:23 +01:00
Vladimir Zotov
16bc2fd631
Updated to use alignOf consistently
Signed-off-by: Vladimir Zotov <azuresplash@gmail.com>
2023-12-10 19:58:22 +01:00
Brendan Hansknecht
199e84e91e
add some missed symbols that roc needs 2023-12-10 19:58:22 +01:00
Brendan Hansknecht
eeeccfb143
fix dce of compiler-rt 2023-12-10 19:58:22 +01:00
Brendan Hansknecht
75aa84f825
Remove hashflooding comment
I think for now it is not worth considering adding hashflooding mitigation to the Roc Dict.
1. Wyhash is a secure enough has to pass SMHasher.
2. Languages like Go use wyhash in production and have not seen hashflooding issues.
3. We do have a random seed that Dicts use that changes per application linking. (Could monomorphize on Dict type for more randomness)
4. Any sort of fallback checks will lead to worse performance in the normal case.
5. A reasonable http server or app can limit the size of JSON or number of HTTP headers to accept.
2023-12-10 19:58:21 +01:00
Brendan Hansknecht
bd69058659
update ingested windows compiler-rt symbols 2023-12-10 19:58:21 +01:00
Brendan Hansknecht
279ea48def
tell windows that we use floats? 2023-12-10 19:58:20 +01:00
Brendan Hansknecht
a86cd28d1d
wasm is not friends with compiler-rt 2023-12-10 19:58:20 +01:00
Brendan Hansknecht
5ec5f63a19
libc is a lie, tell bitcode that roc targets a world where libc might not exist 2023-12-10 19:58:20 +01:00
Brendan Hansknecht
27eea90bc3
correct wrong test case 2023-12-10 19:58:19 +01:00
Brendan Hansknecht
2d0ba0a792
remove all compiler-rt and libc code ports from zig bitcode 2023-12-10 19:58:19 +01:00
Brendan Hansknecht
4c76a224b5
bundle compiler-rt through zig 2023-12-10 19:58:19 +01:00
Brendan Hansknecht
8d8e498f11
remove unnecessary call to math.floor in bitcode 2023-12-10 19:58:18 +01:00
Brendan Hansknecht
c902a01c99
update uitest and mono_test 2023-12-10 19:58:18 +01:00
Brendan Hansknecht
240606b95f
add license to legal details 2023-12-10 19:58:17 +01:00
Brendan Hansknecht
e877c22935
fix Dict.listGetUnsafe to map to low level without wrapping 2023-12-10 19:58:17 +01:00
Brendan Hansknecht
3aa9908cb3
Swap Dict implementation to ankerl dense unordered
ankerl::dense_unordered is a very fast hash map that is built to be an index map.
This enables extra optimizations compared to just wrapping a regular hash map.
As such, I think this map is very well suited for our index map impl in Roc.
I also think this dictionary implementation is simpler overall.
On top of that, this removes the need for SIMD instructions for peak performance.

Benchmarks of the C++ version and other C++ hash maps are here: https://martin.ankerl.com/2022/08/27/hashmap-bench-01/
Though this has clear bias of being written by the author of ankerl::dense_unordered,
the results all look correct and the benchmarks thorough.
2023-12-10 19:58:17 +01:00
Vladimir Zotov
e6095c345f
Updated zig domain
Signed-off-by: Vladimir Zotov <azuresplash@gmail.com>
2023-12-10 19:58:16 +01:00
Eelco Hoekema
15d858a14b
added [head, .. as tail] pattern matching example to tutorial 2023-12-10 19:58:16 +01:00
JRI98
3a86f5de22
Fix format for the 'as' keyword 2023-12-10 19:58:16 +01:00
Henrikh Kantuni
9faf8f5d9b
Add Decem to the list of companies
Signed-off-by: Henrikh Kantuni <henrikh.kantuni@gmail.com>
2023-12-10 19:58:15 +01:00
Rod
38917feec0
Remove "Abilities" from the table of contents since it leads nowhere
Signed-off-by: Rod <randomer@users.noreply.github.com>
2023-12-10 19:58:15 +01:00
Richard Feldman
5f6cd1a41b
Fix Decem logo URL
Signed-off-by: Richard Feldman <oss@rtfeldman.com>
2023-12-10 19:58:14 +01:00
Richard Feldman
c5c8e37a3f
Add Decem to sponsors 2023-12-10 19:58:14 +01:00
ptaszor3
7162fbddd3
Fixed the multiline dbg formatting 2023-12-10 19:58:09 +01:00
ptaszor3
6a6d5cebc0
resolved issue 6188 and added some tests 2023-12-10 19:57:49 +01:00
Anton-4
f795d0856a
Merge pull request #6228 from lukewilliamboswell/fix-6227
Handle TrailingOperator parse error
2023-12-10 17:12:29 +01:00
Brendan Hansknecht
13703eea7d
Merge pull request #6237 from rgripper/patch-2
Updated to use alignOf consistently
2023-12-10 00:45:45 -08:00
Brendan Hansknecht
b39d604745
Dict follow up and addition of releaseExcessCapacity 2023-12-10 00:06:58 -08:00
Vladimir Zotov
26c8471613
Updated to use alignOf consistently
Signed-off-by: Vladimir Zotov <azuresplash@gmail.com>
2023-12-10 08:45:20 +01:00
Brendan Hansknecht
f6bff3a86e
Merge pull request #6216 from roc-lang/dict-ankerl-unordered-dense
Swap Dict implementation to ankerl dense unordered
2023-12-09 22:17:32 -08:00
Brendan Hansknecht
1ad9933b38
add some missed symbols that roc needs 2023-12-09 18:33:23 -08:00
Brendan Hansknecht
e621de328d
fix dce of compiler-rt 2023-12-09 18:11:23 -08:00