Richard Feldman
2993d40b85
Don't support compiling to 128-bit targets
2020-09-30 08:23:44 -04:00
Brendan Hansknecht
46db0fd989
Properly size refcount based on system ptr size
2020-09-29 17:27:29 -07:00
Brendan Hansknecht
9e9552186e
Fix list refcount dec
2020-09-27 10:18:01 -07:00
Brendan Hansknecht
51e1cd61dd
Intentionally leak memory with 0 for refcount
...
A 0 value for refcount is the max and means leaked/read-only memory.
These values should never be incremented or decremented.
This changes also uses signed overflow when decrementing memory.
2020-09-27 09:34:51 -07:00
Brendan Hansknecht
3d6d5d1ad0
Switch refcount of 1 to be isize::MIN as usize
...
Also, adds helper methods for inc/dec of refcount.
2020-09-27 09:28:23 -07:00
Richard Feldman
47b1d45739
Check in builtins.bc
2020-09-26 23:59:10 -04:00
Richard Feldman
6a82fb27f8
Regenerate builtins.bc
2020-09-26 23:17:03 -04:00
Jared Ramirez
5cafbcd5ad
Add Num.atan builtin
2020-09-26 19:00:51 -07:00
Folkert
f492800a28
recursive refcount on lists
2020-09-22 21:58:45 +02:00
Richard Feldman
94b1760965
Remove redundant variable
2020-09-21 21:27:39 -04:00
Folkert
9ac5533f80
final touchups
2020-09-21 23:57:05 +02:00
Folkert
515f717536
don't explicitly add filler bytes
...
leaving the memory undefined is fine
2020-09-21 23:55:05 +02:00
Folkert
fb4a796e07
add different variants of addition
2020-09-21 23:38:10 +02:00
Folkert
455b73e8bd
add isFinite to builtins bytecode
2020-09-21 23:31:11 +02:00
Folkert
95177eee5a
integer addition operations
2020-09-20 20:21:45 +02:00
Folkert
f732eb3e83
crash upon integer overflow
2020-09-20 17:01:00 +02:00
Folkert
16fc5dd497
Merge remote-tracking branch 'origin/trunk' into exception-handling
2020-09-19 21:50:57 +02:00
Folkert
9a0a13646f
fix repl
2020-09-19 01:46:14 +02:00
Jared Ramirez
665c7c7f9f
Add Num.floor
2020-09-17 17:44:53 -07:00
Folkert
14da3906da
wip
2020-09-18 01:07:53 +02:00
Dimitar Apostolov
9276fd8c9d
Add function to call bitcode
2020-09-17 14:07:25 +02:00
Dimitar Apostolov
e89af31015
Use own implementation of pow_int_ instead of llvm
...
Remove LLVM intrinsics code related to `Num.powInt`.
2020-09-17 14:07:18 +02:00
Dimitar Apostolov
2404882c1a
Add Num.powInt implementation
2020-09-17 11:42:37 +02:00
Richard Feldman
1c8383b3bb
clippy things
2020-09-16 19:34:48 -04:00
Richard Feldman
5d3645350d
Merge remote-tracking branch 'origin/trunk' into small-str
2020-09-16 02:23:06 -04:00
Richard Feldman
bec7254d92
Zero-initialize small strings using memset
2020-09-16 01:38:00 -04:00
Richard Feldman
96445262f6
Add memset intrinsic
2020-09-16 01:15:30 -04:00
Richard Feldman
bbbf5de6a5
Simplify call_intrinsic
2020-09-16 01:15:19 -04:00
Jared Ramirez
a0402bca4d
Add Num.ceiling
2020-09-15 18:37:45 -07:00
Richard Feldman
099d9e35f6
Merge pull request #518 from rtfeldman/c-abi-progress
...
C abi progress
2020-09-14 18:28:20 -04:00
Folkert
f794874c68
Merge remote-tracking branch 'origin/trunk' into c-abi-progress
2020-09-14 22:01:12 +02:00
Dimitar Apostolov
bbb05749ab
Add LLVM intrinsic for Num.pow
2020-09-14 22:01:12 +02:00
Folkert
ee017084f7
return 3-element records
2020-09-14 21:56:57 +02:00
Folkert
d093f056b7
consider strings
2020-09-14 01:55:23 +02:00
Chad Stearns
9746e9f240
Cleaned up code, made clippy happy, deleted old List.keep_if implementation
2020-09-13 17:12:01 -04:00
Chad Stearns
30b7545da0
Fixed inplace problem in list_set
2020-09-13 15:04:34 -04:00
Chad Stearns
9351746952
Store capacity in unique list
2020-09-13 14:56:01 -04:00
Chad Stearns
4e7aecc434
Complied with clippy
2020-09-13 14:55:37 -04:00
Chad Stearns
3112025b0c
Passed down inplace to everything that uses allocate_list
2020-09-13 14:46:21 -04:00
Chad Stearns
0a1e297b0f
Passed result layout down build expr function
2020-09-13 13:31:57 -04:00
Richard Feldman
1efc386e5a
Fix Str.concat for small strings
2020-09-12 23:25:34 -04:00
Richard Feldman
4ef800d4b7
Add some TODOs about memcpys
2020-09-12 23:05:25 -04:00
Richard Feldman
254b93a8ce
Add env.small_str_bytes
2020-09-12 23:05:01 -04:00
Richard Feldman
d778e82d65
Fix Str.isEmpty
2020-09-12 22:05:08 -04:00
Richard Feldman
d1b1fd3a6a
Consistently cast string length to usize
2020-09-12 21:57:11 -04:00
Richard Feldman
e3d0145894
Add Str.isEmpty
2020-09-12 21:56:53 -04:00
Richard Feldman
8e8a41079e
Separate out str_is_not_empty
...
Also have list_is_not_empty use ptr_int instead of i64
2020-09-12 21:48:51 -04:00
Richard Feldman
648758f752
Fix Str.concat for big strings
2020-09-12 21:22:37 -04:00
Chad Stearns
a6c3d8edef
Mostly implemented big and small string work for Str.concat. Just some bugs somewhere in the llvm
2020-09-12 17:39:41 -04:00
Chad Stearns
89ca6735eb
Code compiles for load_str, but does not work
2020-09-12 16:59:00 -04:00