Chelsea Troy
|
0cc6e44d35
|
Thread through the divCeil implementation from Zig:
+ OPEN QUESTION: Evidently the Zig implementation can throw an overflow error. Do we want to do something in Roc to fix this?
|
2021-10-17 10:46:16 -05:00 |
|
Folkert
|
9763f9b51b
|
WIP
|
2021-10-17 16:08:41 +02:00 |
|
Folkert
|
7773cf9b4d
|
clippy
|
2021-10-14 20:12:43 +02:00 |
|
Folkert
|
19eadbfe70
|
make list inc/dec non-recursive (except when freeing the list)
|
2021-10-14 19:57:23 +02:00 |
|
Folkert
|
94e8c62613
|
make things compile, base64 has a memory leak
|
2021-10-06 22:57:11 +02:00 |
|
Folkert de Vries
|
fa4875da83
|
Merge pull request #1761 from rtfeldman/giesch
Add List.dropAt
|
2021-10-04 15:01:17 +02:00 |
|
Richard Feldman
|
47c52b0220
|
Merge pull request #1737 from rtfeldman/fix-repl-sum-crash
repl cannot handle some functions
|
2021-10-03 15:52:26 -05:00 |
|
Dan Knutson
|
65821d6a9f
|
remove giesch/todo tags, add List.drop doc
|
2021-10-03 13:55:11 -05:00 |
|
Dan Knutson
|
3baff93a97
|
add first version of List.dropAt
* adds an implementation with no uniqueness/mutability
|
2021-10-03 13:55:11 -05:00 |
|
Folkert
|
0690633116
|
spec for List.reverse
|
2021-10-03 13:34:09 +02:00 |
|
Folkert
|
13d480d5f3
|
spec for list append
|
2021-10-03 13:27:47 +02:00 |
|
Folkert
|
018348bd83
|
make Str.fromUtf8 in-place
|
2021-10-03 12:13:17 +02:00 |
|
Folkert
|
9e97a09a87
|
check if exposed function is defined already
|
2021-10-03 00:57:54 +02:00 |
|
Folkert
|
dbb8acbe67
|
add in-place List.swap
|
2021-10-03 00:25:35 +02:00 |
|
Folkert
|
3d7b42deba
|
better error message for when morphic did not specialize
|
2021-10-03 00:17:15 +02:00 |
|
Folkert
|
fa57ff88a5
|
disable list of constants in read-only section
|
2021-10-03 00:16:52 +02:00 |
|
Kofi Gumbs
|
2f574ea75e
|
Remove extraneous .into()
|
2021-09-29 22:41:30 -04:00 |
|
Kofi Gumbs
|
b32a42f05a
|
Add Str.repeat builtin
|
2021-09-29 17:32:42 -04:00 |
|
Folkert
|
c11d89c4bf
|
fix typo
|
2021-09-24 15:47:53 +02:00 |
|
Folkert
|
34a25408c3
|
fix issue
|
2021-09-24 14:27:38 +02:00 |
|
Folkert
|
cfdda10df4
|
fix argument passing
|
2021-09-22 21:23:53 +02:00 |
|
Richard Feldman
|
33d9077989
|
Merge pull request #1720 from rtfeldman/direct-return-known-types
return values from roc
|
2021-09-21 21:43:51 -04:00 |
|
Brendan Hansknecht
|
0c6f8f308f
|
Remove f16. It is not really supported by modern CPU hardware.
|
2021-09-21 16:51:47 -07:00 |
|
Folkert
|
a4903ccf81
|
fix repl
|
2021-09-20 23:27:20 +02:00 |
|
Folkert
|
e319d1e758
|
make roc main return values, instead of write them into pointer
|
2021-09-19 22:05:48 +02:00 |
|
Folkert
|
c5eeaab2c2
|
remove callresult from cli examples
|
2021-09-19 18:34:42 +02:00 |
|
Folkert
|
7fe652ab19
|
add Development optimization option
|
2021-09-15 20:05:39 +02:00 |
|
Folkert
|
bd7ce52e26
|
only unwrap lambda set at the last moment
|
2021-09-14 22:20:14 +02:00 |
|
Richard Feldman
|
f619932255
|
Merge pull request #1699 from rtfeldman/effect-after
Fix closures only monomorphizing once
|
2021-09-13 19:50:50 -04:00 |
|
Folkert
|
52d36cbe72
|
fix closure weirdness (skipping or infinite looping)
|
2021-09-13 22:50:48 +02:00 |
|
Folkert
|
350891468a
|
add LambdaSet layout variant
|
2021-09-12 17:00:09 +02:00 |
|
Folkert
|
c0cfd6ac16
|
make conversion a cast again
|
2021-09-12 14:28:44 +02:00 |
|
Folkert
|
0b893eb972
|
remove alignment bump again
|
2021-09-12 14:01:41 +02:00 |
|
Richard Feldman
|
0dd1395331
|
Merge pull request #1686 from rtfeldman/refcounting-cleanup
Refcounting cleanup
|
2021-09-11 13:33:36 -04:00 |
|
Folkert
|
cf5bb7ae6e
|
cleanup
|
2021-09-11 13:56:06 +02:00 |
|
Folkert
|
eeb3c26e16
|
decref for dict/set
|
2021-09-10 22:31:39 +02:00 |
|
Folkert
|
cd9b32ba65
|
fix list decref
|
2021-09-10 21:53:57 +02:00 |
|
Folkert
|
5e68d31afc
|
expose decref_pointer_check_NULL
|
2021-09-10 20:42:25 +02:00 |
|
Folkert
|
ac75badbe4
|
refactor
|
2021-09-10 20:08:05 +02:00 |
|
Folkert
|
1d8a475ac6
|
un-pub function
|
2021-09-10 16:06:14 +02:00 |
|
Folkert
|
05ef6fdeb7
|
simplify
|
2021-09-10 15:47:16 +02:00 |
|
Folkert
|
770c8352e3
|
refactor
|
2021-09-10 15:29:28 +02:00 |
|
Folkert
|
7627e15266
|
remove dead code
|
2021-09-10 14:58:27 +02:00 |
|
Folkert
|
fc15004714
|
fix C abi issues in exposed main (quicksort platform)
|
2021-09-10 10:15:01 +02:00 |
|
Folkert
|
3fb6736f7c
|
clarify comment
|
2021-09-06 22:23:23 +02:00 |
|
Folkert
|
0865826364
|
Merge remote-tracking branch 'origin/trunk' into wasm-base64
|
2021-09-06 22:17:52 +02:00 |
|
Folkert
|
05f56a34c7
|
cleanup
|
2021-09-05 21:23:08 +02:00 |
|
Folkert
|
6201ac5e6b
|
if all constants, store list + refcount in constants section
|
2021-09-05 21:23:08 +02:00 |
|
Folkert
|
da966ed506
|
store integer lists in the constants section
|
2021-09-05 21:23:08 +02:00 |
|
Folkert
|
8e7aef314a
|
add ListLiteralElement
|
2021-09-05 21:23:08 +02:00 |
|
Folkert
|
93817a38e2
|
convert zig struct to roc record
|
2021-09-04 16:41:29 +02:00 |
|
Folkert
|
1d17a21d1f
|
higher alignment requirement on rocstr/roclist
|
2021-09-04 15:18:37 +02:00 |
|
Folkert
|
b72726b367
|
clippy
|
2021-09-04 01:39:59 +02:00 |
|
Folkert
|
a7eeae05ca
|
support i386 (no linking yet)
|
2021-09-04 01:31:33 +02:00 |
|
Folkert
|
2954b582a7
|
layout add allocation_alignment_bytes
|
2021-09-04 00:21:14 +02:00 |
|
Folkert
|
0ae2c5fe19
|
check whether a pointer actually stores the tag id in the bits
|
2021-09-03 23:47:05 +02:00 |
|
Folkert
|
4e39543054
|
simplify/optimize decref logic
|
2021-09-01 23:07:56 +02:00 |
|
Folkert
|
85e4afefe8
|
quick fix for failing expects on wasm
|
2021-09-01 17:22:57 +02:00 |
|
Folkert
|
5cb7dbd3cc
|
use zig's decref instead of an LLVM implementation
|
2021-09-01 16:58:05 +02:00 |
|
Folkert
|
59c63ef3a8
|
fix tag id stored in ptr bits on 32-bit systems
|
2021-09-01 15:57:32 +02:00 |
|
Folkert
|
b416e854ef
|
Merge remote-tracking branch 'origin/trunk' into wasm-gen-test
|
2021-08-29 23:14:03 +02:00 |
|
Folkert
|
344f30747d
|
make Dict.len actually return a usize
|
2021-08-29 23:05:58 +02:00 |
|
Folkert
|
32ef95e3d0
|
clean up sjlj code gen
|
2021-08-29 17:09:32 +02:00 |
|
Folkert
|
53c8500d11
|
use zig to generate round function; llvm gives wasm errors
|
2021-08-29 17:09:04 +02:00 |
|
Richard Feldman
|
b3e6a248cf
|
Cast to expect_failed in LLVM, not zig
|
2021-08-28 21:24:16 -04:00 |
|
Folkert
|
b57632e4cc
|
pass list to zig according to c abi
|
2021-08-29 00:24:59 +02:00 |
|
Joshua Hoeflich
|
4e57b1edf2
|
Bump expect to run Rust fn
|
2021-08-28 11:10:02 -05:00 |
|
Joshua Hoeflich
|
93b77a840a
|
Threading through null ptr
|
2021-08-28 10:57:52 -05:00 |
|
Joshua Hoeflich
|
8fc663b735
|
Expect no longer crashes
|
2021-08-28 10:08:12 -05:00 |
|
Folkert
|
8fa4e55c74
|
Merge remote-tracking branch 'origin/trunk' into wasm-cli-option
|
2021-08-27 09:35:34 +02:00 |
|
Richard Feldman
|
ffeaa1ac08
|
Merge branch 'trunk' into store-dec-as-str
|
2021-08-26 21:24:56 -04:00 |
|
Folkert
|
36fc9b5f1f
|
update target-lexicon
|
2021-08-26 21:39:33 +02:00 |
|
Folkert
|
fca5463751
|
more faithfully implement the C abi
when generating llvm/roc functions for e.g. roc_fx_putLine
|
2021-08-26 21:22:21 +02:00 |
|
Jared Ramirez
|
4b2a63fb30
|
Merge branch 'trunk' of https://github.com/rtfeldman/roc into store-dec-as-str
|
2021-08-26 11:23:17 -07:00 |
|
Jared Ramirez
|
8594f2efbe
|
Change how decimals are stored in mono
|
2021-08-26 11:18:26 -07:00 |
|
Richard Feldman
|
bc5b8bfbba
|
Merge remote-tracking branch 'origin/trunk' into wasm-cli-option
|
2021-08-25 23:05:53 -04:00 |
|
Folkert
|
b9cd254b9a
|
allow 4byte alignment in dict values
|
2021-08-25 22:07:16 +02:00 |
|
Folkert
|
f04ad1643f
|
fix some things
|
2021-08-25 20:54:34 +02:00 |
|
Folkert
|
05d2b8150f
|
make dict functions work on 32bit platforms
|
2021-08-25 20:49:07 +02:00 |
|
Folkert
|
4990e543fa
|
make str/list C abi safe
|
2021-08-25 20:47:03 +02:00 |
|
Folkert
|
ce6ab15139
|
use usize instead of i64 in hash and compare
|
2021-08-25 20:47:03 +02:00 |
|
Folkert
|
69e4f6d208
|
make dict functions work on 32bit platforms
|
2021-08-25 20:47:03 +02:00 |
|
Folkert
|
a4475b7544
|
make TestBase64 compile
|
2021-08-25 20:47:03 +02:00 |
|
Folkert
|
8846841a95
|
follow the C abi for effect functions the host exposes
|
2021-08-25 20:47:03 +02:00 |
|
Folkert
|
0a7f7a2772
|
emit LLVM IR that can be compiled to wasm
|
2021-08-24 20:56:13 +02:00 |
|
Folkert
|
204e403275
|
allow 64-bit str in 32-bit mode
|
2021-08-24 17:00:02 +02:00 |
|
Folkert
|
08c24dde1b
|
make refcount increment support 32-bit
|
2021-08-24 16:59:27 +02:00 |
|
Folkert
|
40d86551ad
|
build builtins with 32-bit pointers
|
2021-08-24 16:38:47 +02:00 |
|
Folkert
|
459af15c8f
|
WIP
|
2021-08-23 21:14:09 +02:00 |
|
Folkert
|
80358d14a3
|
update target-lexicon
|
2021-08-23 19:44:53 +02:00 |
|
Folkert
|
194918fe4b
|
remove Invoke
|
2021-08-20 19:32:55 +02:00 |
|
Folkert de Vries
|
86d46825aa
|
Merge branch 'trunk' into NumBytesTo
|
2021-08-20 11:32:20 +02:00 |
|
Richard Feldman
|
4c72aba4a7
|
Merge branch 'trunk' into store-dec-as-str
|
2021-08-19 23:06:04 -04:00 |
|
Joshua Hoeflich
|
b57ebb6229
|
Remove castToNat
|
2021-08-19 16:11:21 -05:00 |
|
Richard Feldman
|
f279485edf
|
Merge branch 'trunk' into roc_panic
|
2021-08-19 07:20:26 -04:00 |
|
Richard Feldman
|
0bebb64bae
|
Merge branch 'trunk' into NumBytesTo
|
2021-08-19 01:37:39 -04:00 |
|
Jared Ramirez
|
d69b9173fc
|
Also store f64 for things like pattern comparisons, etc
|
2021-08-18 17:18:13 -07:00 |
|
Joshua Hoeflich
|
06313a7736
|
cargo clippy
|
2021-08-18 18:05:47 -05:00 |
|
Folkert
|
1c7301ea58
|
refactor
|
2021-08-18 18:39:12 +02:00 |
|
Folkert
|
e31f5d4fa0
|
more cleanup
|
2021-08-18 18:38:18 +02:00 |
|
Folkert
|
012b4baa2e
|
clippy
|
2021-08-18 18:33:33 +02:00 |
|
Joshua Hoeflich
|
92da003fba
|
Adds castToNat
|
2021-08-18 11:02:20 -05:00 |
|
Folkert
|
73358b98bd
|
clippy
|
2021-08-18 15:14:46 +02:00 |
|
Folkert
|
9c27535cee
|
some work, some don't
|
2021-08-18 15:13:48 +02:00 |
|
Folkert
|
c09b3b89f3
|
test_gen works again
|
2021-08-18 13:46:09 +02:00 |
|
Folkert
|
367d08814d
|
don't have compiler generate setjmp/longjmp when building an executable
|
2021-08-17 22:42:03 +02:00 |
|
Folkert
|
adbc7cdc69
|
cleanup
|
2021-08-16 21:16:29 +02:00 |
|
Folkert
|
48e447e558
|
remove more invoke stuff
|
2021-08-16 21:14:56 +02:00 |
|
Folkert
|
5171d181ac
|
emit invoke again to see what's up here
|
2021-08-16 20:44:55 +02:00 |
|
Folkert
|
b9431187f7
|
remove c++ stuff
|
2021-08-16 20:33:55 +02:00 |
|
Folkert
|
b04734580d
|
clippy
|
2021-08-16 20:18:31 +02:00 |
|
Folkert
|
a0a0896622
|
a working prototype
|
2021-08-15 23:20:05 +02:00 |
|
Folkert
|
d8e38ef2ac
|
proof of concept
|
2021-08-15 13:21:14 +02:00 |
|
Joshua Hoeflich
|
22e781259d
|
TODO: Actually implement the functions
|
2021-08-14 19:28:13 -05:00 |
|
Joshua Hoeflich
|
9dad304e95
|
Passing arguments successfully to bytesToU16
|
2021-08-14 19:11:27 -05:00 |
|
Joshua Hoeflich
|
59f07377fe
|
More testing; clean up
|
2021-08-14 18:23:49 -05:00 |
|
Joshua Hoeflich
|
744fefc3a1
|
Fixed: Actually calling llvm we generate
|
2021-08-14 18:20:11 -05:00 |
|
Joshua Hoeflich
|
ff2c3d7945
|
Dummy implementation that doesn't do what we want
|
2021-08-14 17:59:53 -05:00 |
|
Folkert
|
225c97aae3
|
move List.prepend to zig
|
2021-08-14 12:28:05 +02:00 |
|
Folkert
|
4140473f1a
|
cleanup and comments
|
2021-08-11 01:12:46 +02:00 |
|
Folkert
|
8c374c8d7d
|
check sizes when casting
|
2021-08-10 23:46:43 +02:00 |
|
Joshua Hoeflich
|
ae38a0d3ff
|
Cargo fmt
|
2021-08-08 21:41:00 -05:00 |
|
Joshua Hoeflich
|
c00d400d85
|
Fixes merge conflict
|
2021-08-08 21:38:15 -05:00 |
|
Joshua Hoeflich
|
4231b340ee
|
Glue code working
|
2021-08-08 11:06:10 -05:00 |
|
Richard Feldman
|
2a616103c6
|
Rename Str.toBytes to Str.toUtf8
|
2021-08-07 22:46:24 -04:00 |
|
Richard Feldman
|
267836226c
|
s/CodePoint/CodePt/g
|
2021-08-07 21:46:20 -04:00 |
|
Folkert
|
d4896d3ed2
|
remove inlinable_string dependency
|
2021-08-03 21:24:19 +02:00 |
|
Folkert
|
ceb5cc66fa
|
use IdentStr
|
2021-08-03 21:14:36 +02:00 |
|
Folkert
|
e0648d348d
|
new formatting
|
2021-07-30 17:13:50 +02:00 |
|
Folkert
|
899cbeabd7
|
fix extra ampersands
|
2021-07-29 17:32:08 +02:00 |
|
Folkert
|
768c59f45d
|
bigger tag size fixes
|
2021-07-24 13:36:06 +02:00 |
|
Folkert
|
2b84fd0009
|
use WeakAny linking to link in compiler_rt stuff
|
2021-07-24 12:50:06 +02:00 |
|
Folkert
|
f5e5ec42ad
|
use ptr_int
|
2021-07-24 12:43:58 +02:00 |
|
Folkert
|
d0be0df83c
|
tweaks
|
2021-07-24 12:33:57 +02:00 |
|
Folkert
|
59e551dd32
|
cleanup
|
2021-07-24 00:13:00 +02:00 |
|
Folkert
|
bafb16091d
|
explicitly include muloti4 in LLVM IR
|
2021-07-21 15:01:18 +02:00 |
|
Folkert
|
0d606a348e
|
add intrinsics back in ?!
|
2021-07-18 23:25:31 +02:00 |
|
Folkert
|
23ea151d5f
|
make decimal math ops correctly report overflow
|
2021-07-18 22:04:32 +02:00 |
|
Folkert
|
cb42f0c039
|
Merge remote-tracking branch 'origin/trunk' into add-dec-types
|
2021-07-18 16:54:38 +02:00 |
|
Jared Ramirez
|
de7cab629d
|
Merge branch 'trunk' into add-dec-types
|
2021-07-17 17:21:40 -07:00 |
|
Richard Feldman
|
5d5a944ec3
|
Merge pull request #1480 from rtfeldman/store-tag-id-in-ptr
Store tag id in ptr
|
2021-07-17 19:27:58 -04:00 |
|
Folkert
|
33caa0f26d
|
cleanup
|
2021-07-18 00:25:23 +02:00 |
|
Folkert
|
5012b11129
|
fix oversight
|
2021-07-18 00:13:45 +02:00 |
|
Folkert
|
e19b03f290
|
WIP
|
2021-07-18 00:04:10 +02:00 |
|
Folkert
|
e0b9377dcf
|
refactor wrapped tag creation
|
2021-07-17 22:18:33 +02:00 |
|
Folkert
|
c57913f767
|
fix hash and compare
|
2021-07-17 22:00:57 +02:00 |
|
Folkert
|
bfd189aa19
|
clear tag id from reused pointer
|
2021-07-17 21:43:40 +02:00 |
|
Folkert
|
1f1cf180c4
|
fix merge conflict
|
2021-07-17 00:07:29 +02:00 |
|
Brendan Hansknecht
|
daddac4e3c
|
Merge branch 'trunk' into reset-reuse
|
2021-07-16 14:43:30 -07:00 |
|
Folkert
|
134bdb38ba
|
fix bug in casting recursive pointers
|
2021-07-16 22:34:41 +02:00 |
|