Commit graph

584 commits

Author SHA1 Message Date
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
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
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
245a9fc951 Merge remote-tracking branch 'origin/trunk' into specialize-separately 2020-06-13 21:03:38 -04:00
Chad Stearns
97cb4a737e List.single implementation 2020-06-03 18:56:23 -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
Chad Stearns
5c1c9efb89 Added trigonometric functions to code gen and builtins 2020-05-25 16:28:41 -04:00
Richard Feldman
7f05678bf8
Merge branch 'trunk' into int-rem 2020-05-13 22:53:31 -04:00
Chad Stearns
7df4771f7b Int.rem 2020-05-13 04:27:08 -04:00
Richard Feldman
33a5f36d7c Refactor out name arg from from_can 2020-05-10 15:13:18 -04:00
Richard Feldman
85ec1e0f72 Fix anonymous function code gen 2020-05-10 15:13:18 -04:00
Richard Feldman
bf11262e61 Move layout_id from mono to gen
This is because it's actually important that mono never use this.
It should only be used in gen, because it's only safe to use
synchronously, and it's important that mono be done in parallel.

Moving it to gen guarantees that mono will not use it, even accidentally!
2020-05-10 15:13:18 -04:00
Richard Feldman
6e05ba816f Have CallByName use Layout 2020-05-10 15:13:18 -04:00
Richard Feldman
4bfdea03a9 Drop dead code 2020-05-10 09:58:42 -04:00
Richard Feldman
8572879e0d Remove unused procs argument 2020-05-09 22:41:59 -04:00
Richard Feldman
c49abfe2de Add layout to CallByName 2020-05-09 22:41:59 -04:00
Chad Stearns
d2cea5237b Remove commented out INT_ABS implementation 2020-05-09 18:01:36 -04:00
Chad Stearns
1d1f620090 Int Abs 2020-05-09 17:56:10 -04:00
Chad Stearns
7331e55a25 Cargo fmt 2020-05-08 04:07:07 -04:00
Chad Stearns
8e8412bf94 FLOAT_ABS test, and NUM_ABS generally, but not implemented 2020-05-08 00:49:08 -04:00
Chad Stearns
d1b00633be INT NEQ for i1 and i8 integer types 2020-05-01 17:29:43 -04:00
Chad Stearns
71258e0e59 Implemented INT_NE_i64 2020-05-01 16:31:19 -04:00
Richard Feldman
c39b43a265 Code gen numeric comparisons 2020-04-28 18:33:51 -04:00
Richard Feldman
dfb1c2d8a3 Always store collections as (usize, usize) 2020-04-27 20:05:35 -04:00
Richard Feldman
32d6615108 Attempt to store i8 arrays for collection wrappers
This ultimately didn't work because the bitcasting we wanted wasn't allowed.
2020-04-27 20:04:38 -04:00
Chad Stearns
0cfed05008 Implemented div unsafe 2020-04-26 18:11:46 -04:00
Chad Stearns
aa72619952 Implemenet code gen for int div 2020-04-26 14:38:09 -04:00
Richard Feldman
aac5077c8b Remove DEFAULT_CALLING_CONVENTION 2020-04-23 17:41:05 -04:00
Richard Feldman
5b7a16afad Add intrinsics for sqrt and round 2020-04-23 17:41:05 -04:00
Richard Feldman
ea713023e8 Add explicit OptLevel to add_passes 2020-04-16 20:26:08 -04:00
Richard Feldman
2a03a74135 Use the equivalent of -O3 in Inkwell 2020-04-16 19:26:25 -04:00
Richard Feldman
5980bc38da Merge remote-tracking branch 'origin/trunk' into order-of-ops 2020-04-15 05:03:42 -04:00
Richard Feldman
9288e20469 Upgrade to LLVM 10 2020-04-08 06:41:53 -04:00
Richard Feldman
01f3ae893f Use include_bytes! to import llvm bitcode 2020-04-01 23:24:00 -04:00
Richard Feldman
63b38ae174 clippy the original clipper 2020-04-01 00:03:27 -04:00
Richard Feldman
cda6a21fa4 Implement Num.toFloat 2020-03-31 23:51:17 -04:00
Richard Feldman
37492f4aa6 Load builtins on startup 2020-03-31 23:50:55 -04:00
Richard Feldman
5f817d8019 Add a basic CLI 2020-03-30 21:27:37 -04:00
Richard Feldman
0a0a736153 Move pass managers into llvm::build 2020-03-30 21:27:02 -04:00