Commit Graph

417 Commits

Author SHA1 Message Date
Richard Feldman
4f007dd535 Drop unnecessary .into() 2020-07-07 22:36:24 -04:00
Richard Feldman
0ed1892329 (REVERT THIS!) Temporarily disable some tests
I want to merge this to prevent further merge
conflicts, and these seem fine to debug post-merge.
2020-07-07 22:34:09 -04:00
Richard Feldman
7938a31ce3 Re-add List.reverse (missed in merge) 2020-07-07 22:29:18 -04:00
Richard Feldman
cdce98d14f Unwrap the struct inside a single-tag union 2020-07-07 22:07:34 -04:00
Richard Feldman
1cd49689c2 Merge remote-tracking branch 'origin/trunk' into low-level-ops 2020-07-07 21:09:50 -04:00
Richard Feldman
6bde717df8 Add some more i64_abs tests 2020-07-06 22:28:02 -04:00
Richard Feldman
35b653636b Fix Num.abs for ints 2020-07-06 22:27:53 -04:00
Richard Feldman
8d2961c81e Narrow down the problem with f64_sqrt and div_f64 2020-07-06 21:48:39 -04:00
Richard Feldman
9305ecc9bd Specify which test passed or failed 2020-07-06 21:25:54 -04:00
Richard Feldman
b5ad6e17b4 Don't print subs on error
It's way too verbose and unhelpful!
2020-07-06 21:23:59 -04:00
Richard Feldman
092df6ddb2 Account for unwrapped structs in AccessAtIndex 2020-07-05 22:41:07 -04:00
Richard Feldman
853462833c Unwrap around zero-sized record fields in code gen 2020-07-05 22:24:19 -04:00
Richard Feldman
e559deecbf Improve LLVM verification error messages 2020-07-05 22:24:04 -04:00
Chad Stearns
09af8a3b8d Add tests to list push to handle cases like we recently solved regarding List.reverse and List.repeat 2020-07-05 15:55:55 -04:00
Chad Stearns
b76033525f Fix memory with with List.repeat creating large lists, and fix problem with List.repeat operating on empty lists with real layout 2020-07-05 15:45:28 -04:00
Richard Feldman
250fcd1fb0 Start at the last element in the list 2020-07-05 09:06:02 -04:00
Richard Feldman
261f252f06 Reproduce List.reverse code gen crash 2020-07-05 08:57:16 -04:00
Richard Feldman
e0a8d12428 Drop unused elem_bytes declaration 2020-07-04 22:56:23 -04:00
Richard Feldman
563436e6be Try using list_len over len 2020-07-04 22:56:23 -04:00
Chad Stearns
4e7f40ab0f Evaluate if the list to be reversed has a length greater than 0, and match on the layout type EmptyList. We need to do both 2020-07-04 19:45:46 -04:00
Chad Stearns
78fc5d2fec List append symbol and partial implementation 2020-07-04 18:11:57 -04:00
Chad Stearns
9147661e02 More comments for List.reverse 2020-07-03 15:14:21 -04:00
Chad Stearns
d66cf913a9 Refactored the phi2 away 2020-07-03 14:20:34 -04:00
Chad Stearns
fb7cbfdce4 LIST_REVERSE works, so long as the list is made up of ints equal to 1 2020-07-02 22:49:12 -04:00
Chad Stearns
7bd7e697b0 LIST_REVERSE works, so long as the list is made up of ints equal to 1 2020-07-02 22:39:58 -04:00
Chad Stearns
d8a8741aed Merge branch 'trunk' of github.com:rtfeldman/roc into list-reverse 2020-07-02 21:33:24 -04:00
Chad Stearns
f409e1827b Added LIST_REVERSE symbol and an untested implementation in build.rs 2020-07-02 21:33:15 -04:00
Richard Feldman
d7203be7ad Use with_larger_debug_stack on gen_quicksort 2020-06-29 22:21:21 -04:00
Richard Feldman
38ab29ca3e Fix test module names 2020-06-29 22:18:28 -04:00
Richard Feldman
dc4807bfcb Add low-level ops for ListPush, ListRepeat 2020-06-29 22:10:46 -04:00
Richard Feldman
8c96d12661 Merge trunk 2020-06-29 22:10:46 -04:00
Chad Stearns
2f440ecb6a Removed incorrect comment 2020-06-27 16:12:59 -04:00
Chad Stearns
20b0e986ad Merge branch 'list-push' of github.com:rtfeldman/roc into list-push 2020-06-27 15:12:01 -04:00
Chad Stearns
4e039125bf Make test for List.pushing bools just to make sure it works with different types 2020-06-27 15:11:18 -04:00
Chad Stearns
f72cf65f35 Use old size when copying memory in list_push 2020-06-27 15:10:55 -04:00
Richard Feldman
22cc618436 Split gen_builtins into gen_num and gen_list 2020-06-25 22:02:25 -04:00
Richard Feldman
44477f98e9 Fix Num.sqrt, div, mod, and rem 2020-06-25 21:47:02 -04:00
Richard Feldman
46c43da1de Improve debug output 2020-06-25 01:25:33 -04:00
Richard Feldman
9faf47e5cd Fix an incomplete comment 2020-06-25 01:25:11 -04:00
Richard Feldman
e0fc71526e Clean up some debugging info 2020-06-25 00:28:01 -04:00
Richard Feldman
64482f8bfe Fix some indentation 2020-06-25 00:14:53 -04:00
Richard Feldman
0550af17d2 Fix some empty list edge cases 2020-06-25 00:02:52 -04:00
Richard Feldman
27c19ad868 Reproduce List.first bug on wildcard empty list 2020-06-24 23:14:54 -04:00
Richard Feldman
0f36255f83 Fix List.first types 2020-06-24 23:08:25 -04:00
Richard Feldman
faa5f281fb Fix a memory access issue 2020-06-23 23:44:20 -04:00
Richard Feldman
08be131eef Stop using List.getUnsafe in gen_builtins 2020-06-23 22:20:32 -04:00
Richard Feldman
750523ba5c Fix List.single 2020-06-23 19:34:09 -04:00
Richard Feldman
30a95e90d1 Fix Num.toFloat 2020-06-23 19:31:50 -04:00
Richard Feldman
dd8dff0f9e Fix some unary ops 2020-06-23 19:17:39 -04:00
Richard Feldman
3309270747 Fix trig ops 2020-06-23 18:21:07 -04:00
Richard Feldman
1c98248b91 Ops for sqrt and round 2020-06-23 18:05:30 -04:00
Richard Feldman
9f8c48118f wip List.get 2020-06-22 23:30:11 -04:00
Richard Feldman
88990c8711 Move Int and Float modules into Num 2020-06-22 23:25:38 -04:00
Richard Feldman
8d92920731 Re-add Float128 and Float16 2020-06-21 22:29:28 -04:00
Richard Feldman
b97c94c2da Fix infinite loop 2020-06-21 22:29:28 -04:00
Richard Feldman
44b19d3174
Merge branch 'trunk' into list-push 2020-06-21 22:23:24 -04:00
Richard Feldman
cad0a1421e Annotate low-level usages 2020-06-21 21:06:52 -04:00
Chad Stearns
af34f248ea move from i32 to i64 2020-06-21 18:20:45 -04:00
Richard Feldman
56c637e399 Fix some constraint gen 2020-06-21 16:48:44 -04:00
Richard Feldman
187f3f8dc5 Move some Num operations into LowLevel 2020-06-21 15:07:32 -04:00
Chad Stearns
0eee0cc07b A comment about the output list length 2020-06-21 14:14:26 -04:00
Chad Stearns
9376b4b988 empty_list helper 2020-06-21 14:03:04 -04:00
Chad Stearns
10aa44e12b More comments 2020-06-21 14:02:52 -04:00
Chad Stearns
197dc01ad8 Got rid of test for negative amount of repeats. We will worry about that later 2020-06-21 13:24:21 -04:00
Chad Stearns
ca411b11a3 Switched all i32 to i64 in gen builtins 2020-06-21 13:23:59 -04:00
Chad Stearns
5898fa0905 Cleaned up list_push 2020-06-21 04:37:58 -04:00
Chad Stearns
e4eeff5bd0 List repeat works for all test cases except one with a negative number repeats param, and avoids malloc in the case that the number of repeats is not more than 0 2020-06-21 00:55:53 -04:00
Chad Stearns
6485b039c7 List repeats code gen works.. so long as its 5 2020-06-20 15:49:58 -04:00
Chad Stearns
4cf87d2374 Fixed small errors in list push, such as using wrong argument, and using wrong list length 2020-06-20 15:00:11 -04:00
Richard Feldman
461e166254 wip 2020-06-20 13:59:04 -04:00
Chad Stearns
7bf8be5e9a Merge branch 'trunk' of github.com:rtfeldman/roc into list-repeat 2020-06-20 13:45:04 -04:00
Chad Stearns
0531d91301 WIP 2020-06-20 13:40:48 -04:00
Richard Feldman
07689ca9dc Switch back to builtin_defs returning Def 2020-06-20 10:57:44 -04:00
Chad Stearns
3af6d5f0b3 WIP 2020-06-19 21:02:52 -04:00
Richard Feldman
dec5c3a062 Get low-level ops compiling 2020-06-19 20:07:04 -04:00
Richard Feldman
11920e781e Remove gen_module test 2020-06-19 11:10:22 -04:00
Richard Feldman
e014e5c95c Update gen_module test 2020-06-19 11:10:14 -04:00
Richard Feldman
0b64c3a1ad wip 2020-06-19 11:02:13 -04:00
Richard Feldman
1b3b9ee1c4 Merge remote-tracking branch 'origin/trunk' into specialize-separately 2020-06-13 23:54:30 -04:00
Richard Feldman
269da82840 Make VarStore no longer use atomics 2020-06-13 21:59:01 -04:00
Richard Feldman
245a9fc951 Merge remote-tracking branch 'origin/trunk' into specialize-separately 2020-06-13 21:03:38 -04:00
Chadtech
52c4b80f7b
Merge branch 'trunk' into list-single 2020-06-08 08:45:00 -04:00
Chad Stearns
5ad05efa39 Merging in remote 2020-06-07 23:50:20 -04:00
Richard Feldman
e726d838ea Don't have builtins return Defs 2020-06-06 23:55:05 -04:00
Richard Feldman
093579780f Fix stack overflow 2020-06-06 23:47:00 -04:00
Richard Feldman
0a9989e75f wip 2020-06-06 23:41:12 -04:00
Chad Stearns
97cb4a737e List.single implementation 2020-06-03 18:56:23 -04:00
Chad Stearns
3ffd31d5f3 Merge branch 'is-positive-is-negative' of github.com:rtfeldman/roc into trigonometric-functions 2020-06-03 04:28:52 -04:00
Chadtech
af42e13c77
Merge branch 'trunk' into is-positive-is-negative 2020-06-03 01:39:00 -04:00
Richard Feldman
99dcda8603 Use inlinable_string 0.1 2020-05-31 20:14:19 -04:00
Chadtech
0641e287a6
Merge branch 'trunk' into is-positive-is-negative 2020-05-29 23:10:29 -04:00
Richard Feldman
ac940a8b4b wip 2020-05-26 21:21:12 -04:00
Richard Feldman
60e583fb78 Improve debug stuff a bit 2020-05-26 21:19:47 -04:00
Richard Feldman
887ec9860a wip 2020-05-26 21:19:46 -04:00
Richard Feldman
42e3d35564 Use specialize_all 2020-05-26 21:18:25 -04:00
Richard Feldman
98eed099f8 Delete obsolete test.asm 2020-05-26 21:18:25 -04:00
Richard Feldman
4295dec955 Fix load_builtin_aliases ordering 2020-05-26 00:04:59 -04:00
Richard Feldman
c386192e8b Reorganize when solving and constraint gen happen 2020-05-26 00:04:42 -04:00
Chad Stearns
5c1c9efb89 Added trigonometric functions to code gen and builtins 2020-05-25 16:28:41 -04:00
Chad Stearns
c83a6dc7b8 Float function isPositive, isNegative, and isZero 2020-05-22 23:05:17 -04:00