Commit Graph

17429 Commits

Author SHA1 Message Date
Dan Doel
bfb9dcd27d Implement an inlining pass for ANF
It's not used at the moment, but it could be run before the
ANF->MCode translation to do some optimizations (which could be
significant for things like arithmetic code). It should _not_ be run
on the ANF terms that will be stored and exchanged, because that
will change their hashes and actually generate invalid code for
e.g. the JIT. It should only be run as a pass before generating the
final interpreter code.
2024-10-29 00:38:57 -04:00
Dan Doel
6704f8e075 Implement fast calls for exactly saturated applications 2024-10-28 18:10:14 -04:00
dolio
5f3f532ce2
Merge pull request #5423 from unisonweb/cp/fix-segfault
Fix interpreter segfault
2024-10-23 16:33:29 -04:00
Chris Penner
a85132ca6d Standardize optimization flags 2024-10-23 12:30:15 -07:00
Chris Penner
e28a16f80a Fix deprecated array size checks 2024-10-23 12:19:40 -07:00
Chris Penner
666d389728 Fix bad augSeg math 2024-10-23 09:59:50 -07:00
Chris Penner
412d7d1003 Use actual Int size rather than hard-coding 8 bytes. 2024-10-23 09:58:23 -07:00
Chris Penner
95c1fe7fb0 Ensure ALL primitive array access goes through bounds checks 2024-10-23 09:58:23 -07:00
Paul Chiusano
8e29b0a36f
Merge pull request #5420 from unisonweb/fix/5419
Fix variable capture issue during scope flattening
2024-10-22 22:02:05 -05:00
dolio
ca48c9c871 automatically run ormolu 2024-10-22 23:30:50 +00:00
Dan Doel
59eaddda16 Fix variable capture bug during context flattening
Includes proper test case result
2024-10-22 19:29:25 -04:00
Dan Doel
e18c304850 Expose a better API for simultaneous ABTN renaming 2024-10-22 19:15:08 -04:00
Dan Doel
73f269e066 Add test case 2024-10-22 19:14:23 -04:00
Arya Irani
3420cf33dd
Merge pull request #5404 from unisonweb/24-10-09-edit-add-to-fold 2024-10-22 10:46:37 -04:00
Mitchell Dalvi Rosen
7cdf99a776 re-run round trip test transcript 2024-10-21 11:53:48 -04:00
Mitchell Dalvi Rosen
31dad5972d rename edit -> edit.new, edit2 -> edit 2024-10-21 11:23:58 -04:00
Mitchell Dalvi Rosen
4e35221739 ⅄ trunk → 24-10-09-edit-add-to-fold 2024-10-21 10:41:46 -04:00
Dan Doel
503ab9cfb0 Remove no longer necessary unison/math file 2024-10-18 22:20:53 -04:00
Dan Doel
fe1e33af06 Fix a bug in unison-closure implementation
Undersaturated application case was missing, which was resulting in
void results due to use of `cond`.
2024-10-18 17:02:22 -04:00
Dan Doel
c3653e2269 Rename unison/primops/universal file 2024-10-18 14:46:10 -04:00
dolio
167ae6db48 automatically run ormolu 2024-10-18 17:49:35 +00:00
Dan Doel
774a8bdaf0 Fix vector copying operations
The final argument to the racket version is a source index, not a length.
2024-10-18 13:48:20 -04:00
Dan Doel
d4395f5f83 Add native testing commands 2024-10-18 13:48:04 -04:00
Dan Doel
e5d207799f Move EvalMode into RuntimeUtils
This allows the functions there to also choose the native runtime
2024-10-18 11:11:15 -04:00
Dan Doel
9b7259adba Bump @unison/internal version 2024-10-17 20:21:05 -04:00
Dan Doel
5dd6cc837e Some final builtin fixes
Rework handle-array slightly

freezing shouldn't be failing

Crypto definitions were wrapped too much

Int.toText shouldn't produce leading +
2024-10-17 18:04:15 -04:00
Dan Doel
b2996d5315 Change jumpCont to a potentially more correct implementation 2024-10-17 16:47:54 -04:00
Dan Doel
7d1e6d02ea Fix some concurrent issues
Eliminate use of sums

Promise.new was missing a unit argument
2024-10-17 16:46:37 -04:00
mergify[bot]
b1ac7ba1b9
Merge pull request #5397 from unisonweb/cp/lockstep-stack
Unified unboxed/boxed stacks in interpreter
2024-10-17 20:03:48 +00:00
Chris Penner
4d2c0e7f61 Unify some logic on ensure/augSeg 2024-10-17 12:46:07 -07:00
Mitchell Dalvi Rosen
f7d5f8aeac mergetool exit failure feedback 2024-10-17 13:57:30 -04:00
Dan Doel
655f037b19 Make data tag FOp just use the struct projection 2024-10-17 12:42:56 -04:00
Dan Doel
70909e4564 Fix up some tag testing mistakes 2024-10-17 12:42:33 -04:00
Dan Doel
c198068a0e Implement atan2 2024-10-17 12:42:08 -04:00
Dan Doel
5089b9b691 Remove references to compound-wrappers 2024-10-17 12:41:52 -04:00
Dan Doel
0ebe124524 Remove use of sums in bytes-nat implementations 2024-10-17 12:41:30 -04:00
Dan Doel
84b801ed7d Fix erroneous Nat.shiftRight 2024-10-17 11:50:01 -04:00
Chris Penner
96ab099eb2 Fix serialization tests for cases where we discard combs 2024-10-16 15:52:46 -07:00
Chris Penner
6e0faa96b7 Implement roundtrip for SCache 2024-10-16 15:52:46 -07:00
ChrisPenner
d54fc2e86d automatically run ormolu 2024-10-16 15:52:46 -07:00
Chris Penner
2d92c2381f Test serialization on multiple versions 2024-10-16 15:52:46 -07:00
Chris Penner
be92ca20fe Add basic roundtrip test for ANF 2024-10-16 15:52:46 -07:00
Mitchell Rosen
e742b12056 remove unused import 2024-10-16 12:39:06 -04:00
Mitchell Rosen
42d3193f38 MERGETOOL->UCM_MERGETOOL, tmp dir for tmp files 2024-10-16 12:20:19 -04:00
Dan Doel
31625ce061 Remove unison/arithmetic 2024-10-16 01:17:02 -04:00
Dan Doel
980521d546 Fix remaining compile errors 2024-10-16 01:13:12 -04:00
Dan Doel
7db52eb636 Remove unison/builtin import from unison-runtime 2024-10-16 00:37:58 -04:00
Dan Doel
1b69188f00 Remove unison/builtin
unison/primops now exports all builtins
2024-10-16 00:37:00 -04:00
Dan Doel
534b11bb98 Turn unison/primops into a re-export module 2024-10-16 00:34:37 -04:00
Dan Doel
fb6f1992c3 Fix errors in primop modules 2024-10-16 00:33:55 -04:00