gingerBill
8fc9566a83
Use *_set_update where possible
2022-12-20 14:19:55 +00:00
gingerBill
c1f5be24e2
Remove dead code in the compiler
2022-12-18 22:49:10 +00:00
gingerBill
690666537c
Add gb_internal to checker
2022-12-18 21:46:27 +00:00
gingerBill
056ba1ed13
Even more gb_internal everywhere
2022-12-18 21:24:45 +00:00
gingerBill
ac5f5a33e9
gb_internal a lot
2022-12-18 21:17:07 +00:00
gingerBill
34a048f7da
Replace compiler for loops for the hash-table types to simplify code usage
2022-12-09 11:29:28 +00:00
gingerBill
afea221d64
Make structs with the same fields but different tags different types
...
Fixes #2105
2022-11-21 13:10:49 +00:00
gingerBill
4c40495742
Fix #2188
2022-11-21 11:23:10 +00:00
gingerBill
2b83f27f06
Merge branch 'master' into map-dev
2022-11-11 15:54:33 +00:00
gingerBill
16fc961010
Begin work on map static set
2022-11-11 14:45:22 +00:00
gingerBill
a71daee545
Allow for -use-static-map-calls which generates a get procedure per map; add runtime.map_get
2022-11-08 14:58:05 +00:00
gingerBill
046dd55032
Change __dynamic_map_get signature
2022-11-08 13:02:32 +00:00
gingerBill
ed58374964
Make Map_Info store pointers to cell info rather than inline
2022-11-08 12:18:36 +00:00
gingerBill
d77269dee2
Disallow zero sized map keys
2022-11-08 11:42:42 +00:00
gingerBill
810a1eee41
Remove the need for type->Map.internal_type and replace with the definition of runtime.Raw_Map
2022-11-08 11:13:46 +00:00
gingerBill
c96e0afbf1
Begin work on implementing the new map internals
2022-11-07 23:02:21 +00:00
Jasper Geer
e8517e1d02
check for nullptr when evaluating untypedness
2022-11-04 16:29:04 -04:00
gingerBill
2b7ca2bdd6
Fix #2160 (deep subtyping through using of _)
2022-11-01 13:14:20 +00:00
gingerBill
8c3f01fbfa
Correct parapoly determination of generated internal type of a map
2022-09-22 00:05:11 +01:00
gingerBill
1d793ea338
Split header table data and the map pointer
2022-09-21 12:09:05 +01:00
gingerBill
eb7a9c55b0
Improve parapoly support for ^T to [^]$V and vice versa
2022-09-20 22:47:53 +01:00
gingerBill
ef372bd861
Replace #optional_second with #optional_allocator_error
2022-09-12 13:08:32 +01:00
gingerBill
aeacf3a9d8
Correct max alignment handling throughout the llvm backend
2022-08-24 13:07:41 +01:00
gingerBill
4ba486baa2
Add extra max alignment parameter for metrics (specifically for SIMD)
2022-08-24 12:58:16 +01:00
gingerBill
f1ffd90294
Fix #1966
2022-08-24 12:52:57 +01:00
gingerBill
d30198c99a
Merge pull request #1944 from odin-lang/load-improvements
...
Improvements to `#load`
2022-08-15 10:27:53 +01:00
gingerBill
8e7c7eeeba
Fix lb_emit_ptr_offset
2022-08-12 13:48:10 +01:00
gingerBill
a7c3906003
#load(path, type)
...
where `type` can be `string` or `[]T` where `T` is a simple type
2022-08-11 14:30:14 +01:00
gingerBill
5e3cf45df3
Add #soa pointer type to aid with refactoring to #soa data types
...
a: #soa[16]Foo
p := &a[6]
#assert(type_of(p) == #soa^#soa[16]Foo)
p^.x = 123
p.x = 123
2022-08-08 15:07:00 +01:00
gingerBill
ea42613fec
Improve error message with suggestion for #1866
2022-06-28 11:27:50 +01:00
gingerBill
d0e8a735ba
Add arithmetic operator support for simd vectors; Add intrinsics.simd_and_not
2022-05-26 17:09:46 +01:00
gingerBill
7ec0236fbf
Add simd_reverse
2022-05-26 11:14:22 +01:00
gingerBill
0fd43c1a0b
Add simd.{sqrt, ceil, floor, trunc, nearest}
2022-05-26 11:02:02 +01:00
gingerBill
808ea30b48
Allow booleans for #simd
2022-05-25 22:16:44 +01:00
gingerBill
63cc8a80a0
Correct parapoly for #simd
2022-05-25 21:29:45 +01:00
gingerBill
3b54015e80
Mock out simd intrinsics
2022-05-25 17:54:05 +01:00
gingerBill
b032d5af87
Make #simd an opaque type
2022-05-25 17:26:18 +01:00
gingerBill
3ec70c5517
Merge functionality of #maybe with the standard 'union' functionality
2022-05-23 12:04:19 +01:00
gingerBill
a232c0888c
intrinsics.atomic_type_is_lock_free
2022-04-02 14:38:42 +01:00
gingerBill
9f2d710c35
Change intrinsics.Atomic_Memory_Order fields to use Ada_Case rather than snake_case
2022-03-31 12:57:24 +01:00
gingerBill
6bc0c611ab
Enforce success failure pairings of compare_exchange_*_explicit at compile time
2022-03-31 00:49:53 +01:00
gingerBill
203382461b
Replace the atomic intrinsics
...
Matching C11 in style
2022-03-31 00:14:49 +01:00
gingerBill
3f935bea25
union #shared_nil
...
This adds a feature to `union` which requires all the variants to have a `nil` value and on assign to the union, checks whether that value is `nil` or not. If the value is `nil`, the union will be `nil` (thus sharing the `nil` value)
2022-03-24 11:55:03 +00:00
gingerBill
a68f0b2d72
Improve procedure group selection based on the minimum number of arguments
2022-03-18 22:18:12 +00:00
gingerBill
49fecbdc5e
Improve error message when there is "no field" found for a large anonymous struct
2022-03-01 14:49:05 +00:00
gingerBill
ad2f1ac24e
Improve union_tag_size
2022-02-22 23:01:28 +00:00
gingerBill
65dedbb1ca
Add #subtype struct field prefix, required to have a COM interface hierarchy
2022-02-16 11:54:15 +00:00
gingerBill
f8afda3b22
Add more objc attributes
2022-02-11 22:54:51 +00:00
gingerBill
c5d348515d
Add intrinsics.type_is_subtype_of; intrinsics.objc_selector_name
2022-02-08 22:59:37 +00:00
gingerBill
0cc40db565
Begin work on support objc intrinsics
2022-02-08 17:04:55 +00:00