Folkert
|
958f3f9ad4
|
change pattern destructuring stores
they are now tracked in the Cond/Switch variants, rather than merged into the branch constructors. Required for 'beans'
|
2020-03-23 23:35:45 +01:00 |
|
Folkert
|
2bb69f333f
|
always Cond on a symbol
this will make 'beans' easier
|
2020-03-23 20:00:15 +01:00 |
|
Folkert
|
46062439b5
|
remove label from Struct layout
|
2020-03-23 17:55:02 +01:00 |
|
Folkert
|
e2a7c970bc
|
refactor Access into AccessAtIndex
|
2020-03-23 17:55:02 +01:00 |
|
Richard Feldman
|
db502fe2e7
|
Revise some tests
|
2020-03-21 22:51:11 -04:00 |
|
Richard Feldman
|
52bfe3ce9e
|
Add bounds checking to List.setInPlace
|
2020-03-21 22:12:51 -04:00 |
|
Richard Feldman
|
3e71b5a38d
|
Extract bounds_check_comparison
|
2020-03-21 22:11:06 -04:00 |
|
Richard Feldman
|
a0dd31ee51
|
Add bounds checking for List.set in LLVM
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
d0a1adfef9
|
Fix set_shared_int_list for LLVM
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
cc8683d241
|
Fix use of GEP (was using byte offset, not index)
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
e6704d1fcb
|
Streamline empty list LLVM code gen
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
d2e7e373e6
|
Remove unused lifetimes
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
a286dec4cc
|
Reorganize some things
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
f86c3f1e7e
|
Avoid some redundant stores/loads
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
5b902b5a49
|
Use ptr_int over hardcoded i64
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
f2419bb9f8
|
Use struct_type.get_undef()
|
2020-03-21 21:19:18 -04:00 |
|
Richard Feldman
|
fc036453d9
|
Have List.set in LLVM clone before mutating
|
2020-03-21 21:19:18 -04:00 |
|
Folkert
|
e4566b9757
|
clean up comment
|
2020-03-20 11:47:22 +01:00 |
|
Richard Feldman
|
b33af811d0
|
Merge branch 'trunk' into unit-types
|
2020-03-19 22:05:22 -04:00 |
|
Folkert
|
14979ceb41
|
Merge remote-tracking branch 'origin/trunk' into unit-types
|
2020-03-20 01:02:13 +01:00 |
|
Folkert
|
f44fea42bb
|
Boolean and/or in cranelift
|
2020-03-20 00:59:26 +01:00 |
|
Folkert
|
e6bee2656d
|
add Bool.and for llvm
|
2020-03-19 23:18:44 +01:00 |
|
Folkert
|
006b1f8696
|
Switch on floats in llvm
|
2020-03-19 14:58:28 +01:00 |
|
Folkert
|
0075e3fb04
|
attempt at float switches
needs something more , will circle back later
|
2020-03-19 14:25:37 +01:00 |
|
Folkert
|
f30655a103
|
Switch on tags in llvm
|
2020-03-19 14:18:54 +01:00 |
|
Dan Bruder
|
2c630fd014
|
Use sorted fields from struct layout as well as layout.stack_size in crane and llvm access
|
2020-03-19 05:59:29 -04:00 |
|
Richard Feldman
|
04f8b93a9b
|
the clippiest of clips
|
2020-03-18 21:31:01 -04:00 |
|
Richard Feldman
|
8f51b2d429
|
Don't hardcode elem_bytes in llvm
|
2020-03-18 21:31:01 -04:00 |
|
Richard Feldman
|
43c4fadd6e
|
Use usize length, no capacity for llvm List
|
2020-03-18 21:31:01 -04:00 |
|
Richard Feldman
|
59368caa0c
|
Revert various attempts to use target_data
|
2020-03-18 21:26:51 -04:00 |
|
Richard Feldman
|
c425490317
|
Another failed attempt to use target_data
|
2020-03-18 21:26:51 -04:00 |
|
Richard Feldman
|
6e977d96fc
|
Failed attempt to use target_data
|
2020-03-18 21:26:51 -04:00 |
|
Richard Feldman
|
eed9fb0e69
|
Have Env store TargetData instead of pointer_bytes
|
2020-03-18 21:26:51 -04:00 |
|
Folkert
|
b93fe4e341
|
make arbitrary AccessAtIndex work
it now uses that actual layout, not a hardcoded one
|
2020-03-19 00:25:16 +01:00 |
|
Folkert
|
0996f264e7
|
simplify Byte layout
|
2020-03-18 22:22:32 +01:00 |
|
Folkert
|
c11f374eb0
|
simplify Bool layout
|
2020-03-18 22:15:03 +01:00 |
|
Folkert
|
f906c9b4b4
|
uncomment cranelift tests
|
2020-03-18 21:39:39 +01:00 |
|
Folkert
|
99db336033
|
Working pattern match on Result Int Int
|
2020-03-18 21:35:10 +01:00 |
|
Folkert
|
53bd47221c
|
WIP things seem to work in theory
|
2020-03-18 16:44:53 +01:00 |
|
Folkert
|
845e30658e
|
WIP
|
2020-03-18 02:20:21 +01:00 |
|
Folkert
|
165c5d8363
|
load/store all tags in llvm
|
2020-03-17 22:04:11 +01:00 |
|
Folkert
|
6253d2d1af
|
pattern match on single-tag tag unions
in LLVM and crane
|
2020-03-17 19:44:59 +01:00 |
|
Folkert
|
ba69987c1a
|
llvm one element tag store
|
2020-03-17 15:29:40 +01:00 |
|
Folkert
|
c20f777dba
|
comment tests that fail for llvm
|
2020-03-17 00:36:58 +01:00 |
|
Folkert
|
6ff22de9dd
|
store/define tags in llvm
|
2020-03-17 00:36:58 +01:00 |
|
Richard Feldman
|
6cd8afd5d6
|
Fix using structs with records
|
2020-03-15 15:13:52 -04:00 |
|
Richard Feldman
|
010e390fd6
|
Make using records in defs work
|
2020-03-15 14:31:01 -04:00 |
|
Richard Feldman
|
a54db8bf92
|
Merge remote-tracking branch 'origin/trunk' into array-wrappers
|
2020-03-14 20:49:59 -04:00 |
|
Richard Feldman
|
8d4331f903
|
Merge remote-tracking branch 'origin/trunk' into array-wrappers
|
2020-03-13 22:20:35 -04:00 |
|
Richard Feldman
|
4c19dd86ff
|
First pass at some List implementation stuff
|
2020-03-13 22:15:26 -04:00 |
|