Commit Graph

325 Commits

Author SHA1 Message Date
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
gingerBill
19aec13a10 Support rank-2 arrays (matrix-like) for transpose 2022-02-06 11:42:59 +00:00
gingerBill
97be867103 Rename #partial[Enum]Type to #sparse[Enum]Type for non-contiguous enum fields 2022-02-05 13:01:15 +00:00
gingerBill
ecdaac9921 Unify are_types_identical_unique_tuples 2022-01-19 15:14:15 +00:00
gingerBill
5ff82fc113 Correct tuple name checking for doc writing 2022-01-19 15:11:42 +00:00
gingerBill
fb01dfe048 Improve docs_writer.cpp 2022-01-17 22:17:07 +00:00
gingerBill
bdf66bb1e1 Correct abs type behaviour for quaternions 2021-12-31 22:54:12 +00:00
gingerBill
9246e89c4a Fix #1328 2021-11-23 11:43:32 +00:00
gingerBill
daebaa8b50 Fix #1319 2021-11-19 15:43:13 +00:00
gingerBill
a674e842d0 Improve matrix indices to offset logic 2021-11-08 12:15:57 +00:00
gingerBill
23f0fbc376 Improve matrix->matrix casting implementation 2021-11-08 11:40:41 +00:00
gingerBill
c20230509f Correct index to offset calculation for matrix compound literals 2021-11-02 23:56:19 +00:00
gingerBill
306bdf8869 Update alignment rules for matrix types as a compromise to keep zero padding 2021-10-25 00:46:50 +01:00
gingerBill
48d277a3c4 Allow conversions between matrices of the same element count 2021-10-21 01:34:39 +01:00
gingerBill
9b7a25d4a9 Remove padding in stride of matrix types 2021-10-20 17:03:54 +01:00
gingerBill
e6f725dc2c Minor fix for parapoly matrix types 2021-10-20 17:00:14 +01:00
gingerBill
cee45c1b15 Add hadamard_product 2021-10-20 02:18:30 +01:00
gingerBill
3f1930b76e Clean up stride logic 2021-10-20 01:26:33 +01:00
gingerBill
afac1a2cc1 Unify matrix stride calculation 2021-10-20 01:17:10 +01:00
gingerBill
82b6772ea4 Support matrix literals 2021-10-20 00:40:03 +01:00
gingerBill
662cbaf425 Support indexing matrices 2021-10-19 12:13:19 +01:00
gingerBill
1556fad65a Change syntax for matrices to matrix[R, C]T 2021-10-19 11:31:11 +01:00