Commit graph

506 commits

Author SHA1 Message Date
Folkert
6d2d65bb1e
remove Boxed layout 2023-07-09 15:47:28 +02:00
Folkert
d64930c17f
remove box and unbox expressions 2023-07-09 15:47:28 +02:00
Folkert
f27cb83a02
remove Reuse 2023-06-29 18:40:26 +02:00
Folkert
463f739c06
add reuse info to normal Tag ir constructor 2023-06-29 18:40:26 +02:00
Richard Feldman
0ade2a85d2
Merge pull request #5622 from roc-lang/reset-reuse-free
free or reuse unconditionally when value is unique
2023-06-28 09:58:10 -04:00
Folkert
8c02cc4ef0
only clear tag id in reset when needed 2023-06-27 20:25:32 +02:00
Folkert
fc3004da58
free or reuse unconditionally when value is unique 2023-06-27 17:37:45 +02:00
Folkert
1c52c23c5f
Revert "use 32-bit GEP indices where easily possible"
This reverts commit 7c9c3d829c.
2023-06-27 11:02:24 +02:00
Folkert
7c9c3d829c
use 32-bit GEP indices where easily possible 2023-06-27 00:37:09 +02:00
Folkert
7311c565f1
use updated llvm type signatures 2023-06-27 00:09:23 +02:00
Folkert
8738c95d6f
give 0 as a value to our enum attributes 2023-06-27 00:07:33 +02:00
Folkert
654cf7b861
changes after review 2023-06-24 14:49:57 +02:00
Folkert
c38f8bec75
fix llvm gen tests 2023-06-24 14:49:56 +02:00
Folkert
b497c76e44
clippy 2023-06-24 14:49:51 +02:00
Folkert
4a5b6a7a0a
never inline overflow panicking code
it creates too many allocas, growing the stack frame
2023-06-24 14:49:49 +02:00
Folkert
7637506037
skip is_null check if possible 2023-06-24 14:49:49 +02:00
Folkert
9955fe581b
attempt to simplify logic 2023-06-24 14:49:48 +02:00
J.Teeuwissen
2d9fdf0338
updated tag_pointer_set_tag_id 2023-06-24 14:49:48 +02:00
J.Teeuwissen
21d1835406
use build_gep to avoid build_int_to_ptr 2023-06-24 14:49:48 +02:00
Folkert
052ce8f2aa
clippy 2023-06-24 14:49:47 +02:00
Folkert
9c85fb90d3
fix bugs 2023-06-24 14:49:47 +02:00
Folkert
0247237fe8
WIP 2023-06-24 14:49:46 +02:00
Folkert
76dcb75ff6
add Ptr lowlevels 2023-06-24 14:49:46 +02:00
Folkert
17512873e8
add LayoutRepr::Ptr 2023-06-24 14:49:45 +02:00
Hannes
97fa6758d0 Rename trimLeft to trimStart and trimRight to trimEnd 2023-06-19 13:17:59 +08:00
Ayaz Hafiz
41597cbab7
Do not make LayoutInterner mutable 2023-06-17 18:13:03 -05:00
Ayaz Hafiz
c81a652aaa
Dont insert into interner at all 2023-06-17 18:13:03 -05:00
Ayaz Hafiz
8aef12bd36
call_roc_function takes repr 2023-06-17 18:13:02 -05:00
Ayaz Hafiz
46e0ce32f4
no insert direct in expect 2023-06-17 18:13:02 -05:00
Ayaz Hafiz
61e28bc1d8
No need to insert into interner 2023-06-17 18:13:02 -05:00
Ayaz Hafiz
6139918e3b
Remove insert_direct_no_semantic in compare eq 2023-06-17 18:13:02 -05:00
Ayaz Hafiz
7ab044d79f
argument_type_from_layout takes layoutrepr 2023-06-17 18:13:02 -05:00
Ayaz Hafiz
ee25735731
LayoutIds use LayoutRepr 2023-06-17 18:13:02 -05:00
Ayaz Hafiz
390e9f8648
load_roc_value by layoutrepr 2023-06-17 18:13:01 -05:00
Ayaz Hafiz
07f40baf62
use_roc_value by layoutrepr 2023-06-17 18:13:01 -05:00
Ayaz Hafiz
5979405b79
Store value by layoutrepr 2023-06-17 18:13:01 -05:00
Ayaz Hafiz
bc41db2a34
Get rid of passing target_info a bunch 2023-06-17 18:13:00 -05:00
Ayaz Hafiz
8495f3b085
Have basic_type_from_layout take LayoutRepr 2023-06-17 18:12:17 -05:00
Ayaz Hafiz
6c4f76c5c9
Pass tag target ptr rather than alloca 2023-06-16 21:06:49 -05:00
Ayaz Hafiz
a7978abdc9
Fix nullable unwrapped code generation 2023-06-16 18:11:51 -05:00
Ayaz Hafiz
465cee053e
Have RocUnion::as_struct_value return an alloca instead
Saves a useless store/load.
2023-06-16 17:54:17 -05:00
Ayaz Hafiz
0403509f64
Get rid of unnecessary comment 2023-06-16 17:51:47 -05:00
Ayaz Hafiz
942fb37155
Revert unconditional branch taken 2023-06-16 15:27:56 -05:00
Ayaz Hafiz
ec38d8a16d
Clippy 2023-06-16 11:21:17 -05:00
Ayaz Hafiz
b193d6c726
Fix loads in ToNumChecked 2023-06-16 11:18:43 -05:00
Ayaz Hafiz
4f626bca53
Fix checked_dec operations 2023-06-16 11:13:18 -05:00
Ayaz Hafiz
f95cef8086
Add llvm_alignment_bytes and memcpy function 2023-06-16 10:30:44 -05:00
Ayaz Hafiz
2294f6994f
TERRIBLE HACK to support x86 compilation 2023-06-16 10:30:44 -05:00
Ayaz Hafiz
d39c8ba7be
Revert legacy struct builder 2023-06-16 10:30:43 -05:00
Ayaz Hafiz
ea6330b48b
Make sure to memcpy with correct size and alignments 2023-06-16 10:30:43 -05:00