gingerBill
|
549a383cf0
|
Merge branch 'master' into new-matrix-type
|
2021-10-26 12:53:47 +01:00 |
|
gingerBill
|
72cc92dc5c
|
Add llvm_get_inline_asm for future compatibility
|
2021-10-26 11:44:25 +01:00 |
|
gingerBill
|
a440d8d812
|
Improve use of vector muladd operations
|
2021-10-25 13:10:56 +01:00 |
|
gingerBill
|
d62c701a43
|
Improve matrix code generation for all supported platforms
Through assembly optimization
|
2021-10-25 01:03:16 +01: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
|
b4df51e483
|
Merge branch 'master' into new-matrix-type
|
2021-10-23 19:24:47 +01:00 |
|
gingerBill
|
c9effb9b9f
|
Correct ternary if expression type determination
|
2021-10-22 14:37:27 +01:00 |
|
gingerBill
|
ef73a284e3
|
Fix check_remove_expr_info
|
2021-10-22 14:12:48 +01:00 |
|
gingerBill
|
48de1a01a9
|
Correct update propagation of type for ternary if expressions
|
2021-10-22 13:14:19 +01:00 |
|
gingerBill
|
209684d5a4
|
Merge branch 'master' into new-matrix-type
|
2021-10-21 11:48:00 +01:00 |
|
gingerBill
|
1405420935
|
Support TenraryIfAddr in lb_build_addr
|
2021-10-21 11:46:32 +01:00 |
|
gingerBill
|
48d277a3c4
|
Allow conversions between matrices of the same element count
|
2021-10-21 01:34:39 +01:00 |
|
gingerBill
|
e0b9475378
|
Allow casting between square matrices of the same element type
|
2021-10-21 01:14:44 +01:00 |
|
gingerBill
|
d67d7168e2
|
Allow scalars with matrices
|
2021-10-21 00:04:22 +01:00 |
|
gingerBill
|
30c141ceb9
|
Minor clean up for lb_matrix_trimmed_vector_mask
|
2021-10-20 15:36:24 +01:00 |
|
gingerBill
|
d3abc1a2b4
|
Add matrix_flatten - matrix[R, C]T -> [R*C]T
|
2021-10-20 15:33:23 +01:00 |
|
gingerBill
|
465c87bd5a
|
Make transpose use SIMD if possible
|
2021-10-20 15:22:02 +01:00 |
|
gingerBill
|
d0d9a3a4f4
|
Make lb_emit_matrix_mul SIMD if possible
|
2021-10-20 14:49:20 +01:00 |
|
gingerBill
|
9e43072113
|
Make lb_emit_vector_mul_matrix use SIMD if possible
|
2021-10-20 13:11:33 +01:00 |
|
gingerBill
|
1bfbed0e02
|
Add llvm_vector_reduce_add
|
2021-10-20 12:48:48 +01:00 |
|
gingerBill
|
0fd525d778
|
Make lb_emit_matrix_mul_vector use SIMD if possible
|
2021-10-20 12:39:38 +01:00 |
|
gingerBill
|
cee45c1b15
|
Add hadamard_product
|
2021-10-20 02:18:30 +01:00 |
|
gingerBill
|
68afbb37f4
|
Add builtin outer_product
|
2021-10-20 02:06:56 +01:00 |
|
gingerBill
|
7faca7066c
|
Add builtin transpose
|
2021-10-20 01:51:16 +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
|
243e2e2b8a
|
Basic support for matrix*vector, vector*matrix operations
|
2021-10-19 11:24:26 +01:00 |
|
gingerBill
|
35111b39b8
|
Try to support the matrix multiplication LLVM intrinsics
|
2021-10-18 18:57:21 +01:00 |
|
gingerBill
|
ba331024af
|
Very basic matrix support in backend
|
2021-10-18 18:16:52 +01:00 |
|
gingerBill
|
f99bea12c7
|
Allow uintptr <-> [^]T
|
2021-09-29 16:36:05 +01:00 |
|
gingerBill
|
6f872e04c8
|
Move redundant auto_cast error from -vet to -vet-extra
|
2021-09-28 12:24:51 +01:00 |
|
gingerBill
|
6fab93c4b3
|
Fix [^]u8 to cstring conversion
|
2021-09-25 21:11:54 +01:00 |
|
gingerBill
|
fa0d58f96e
|
Correct f64 -> u128/i128 generation
|
2021-09-25 15:38:56 +01:00 |
|
gingerBill
|
8de728e3dc
|
LLVM Code Generator: Add explicitly padding between fields in LLVM struct types
|
2021-09-13 16:40:24 +01:00 |
|
gingerBill
|
be68bf9f26
|
Only store field_index remove field_src_index (for the time being)
|
2021-09-13 11:29:46 +01:00 |
|
gingerBill
|
fb8fa5217d
|
Begin minimize Type size by replacing Array with Slice etc
|
2021-09-13 00:58:39 +01:00 |
|
gingerBill
|
3195fac92b
|
Fix slice indices endianness
|
2021-09-12 16:47:17 +01:00 |
|
gingerBill
|
d4f5ef046d
|
Remove goto in favour of multiple exits
|
2021-09-08 11:58:01 +01:00 |
|
gingerBill
|
83bd7c73c4
|
Fix #1120 code generation
|
2021-09-08 11:49:07 +01:00 |
|
gingerBill
|
72508dbce3
|
Fix code gen bug for slicing multi pointers
|
2021-09-08 11:14:26 +01:00 |
|
gingerBill
|
db6fad7396
|
Fix indexing code gen for multi-pointers
|
2021-08-22 16:55:57 +01:00 |
|
gingerBill
|
07bfb55658
|
Fix code gen for compare against nil for multi pointers
|
2021-08-22 16:53:26 +01:00 |
|
gingerBill
|
932f330a51
|
Add comparisons to LLVM backend for multi pointers
|
2021-08-21 23:12:15 +01:00 |
|
gingerBill
|
6a77fc4cdd
|
Add multi-pointer types [^]T
|
2021-08-21 23:10:21 +01:00 |
|
gingerBill
|
7845769d4b
|
Remove unused code
|
2021-08-19 15:03:10 +01:00 |
|
gingerBill
|
21cbac755e
|
Make or_else and or_return operators (binary and suffix respectively)
|
2021-08-15 17:14:35 +01:00 |
|
gingerBill
|
01f431b01f
|
Unify semantics of the built-in swizzle procedure with the selector expression semantics e.g. .xyz
|
2021-08-09 19:37:58 +01:00 |
|
gingerBill
|
40822be595
|
Reorganize llvm_backend.cpp into separate files for easier maintenance
|
2021-08-07 12:01:48 +01:00 |
|