Commit Graph

2770 Commits

Author SHA1 Message Date
gingerBill
841a96691b Attempt to get wasm64 compiling with the correct features enabled 2021-10-31 00:37:37 +01:00
gingerBill
8ef6f9dd7b Compile wasm64; Add lb_run_remove_unused_function_pass 2021-10-31 00:11:38 +01:00
gingerBill
5bc8a491a7 Begin work on supporting wasm64; Correct wasm32 compilation behaviour 2021-10-30 23:24:34 +01:00
gingerBill
7b8b2f042c Add debug type information for matrix 2021-10-29 00:13:22 +01:00
gingerBill
ef29ffeb21 Correct llvm_vector_shuffle_reduction 2021-10-28 15:09:20 +01:00
gingerBill
3794d2417d Write a log(n) fallback for llvm_vector_reduce_add
This may be what LLVM does at any rate
2021-10-28 15:01:13 +01:00
gingerBill
70793236ab Support llvm_vector_reduce_add if the LLVM intrinsic is not supported 2021-10-28 00:57:10 +01:00
gingerBill
793a6479ef Fix typo 2021-10-27 23:37:04 +01:00
gingerBill
47bef7a557 Update doc-format 2021-10-27 23:34:56 +01:00
gingerBill
ccab715bbc Add support for matrix type in doc format 2021-10-27 23:26:17 +01:00
gingerBill
c4d2aae0ed Merge pull request #1245 from odin-lang/new-matrix-type
`matrix` type
2021-10-26 21:08:08 +01:00
gingerBill
8868bcf57a Merge pull request #1234 from Skytrias/master
fix strip-semicolon using original file handle size
2021-10-26 21:04:02 +01:00
gingerBill
549a383cf0 Merge branch 'master' into new-matrix-type 2021-10-26 12:53:47 +01:00
gingerBill
9522c42460 Change use of LLVMSizeOf to lb_sizeof 2021-10-26 12:17:39 +01:00
gingerBill
72cc92dc5c Add llvm_get_inline_asm for future compatibility 2021-10-26 11:44:25 +01:00
gingerBill
7d715fe113 Add ODIN_LLVM_MINIMUM_VERSION_12 2021-10-25 16:05:22 +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
06f4762144 Allow parsing for [^]T{} to improve error messages 2021-10-23 19:22:08 +01:00
gingerBill
2a50f9c8d4 Rename -ignore-lazy to -internal-ignore-lazy 2021-10-23 17:41:11 +01:00
gingerBill
71932da7e3 Add intrinsics.unaligned_store intrinsics.unaligned_load 2021-10-23 16:52:43 +01:00
skytrias
6399f2b014 fix strip-semicolon using original file handle size 2021-10-23 00:12:32 +02: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
28af376d10 Quick fix 2021-10-22 13:17:49 +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
c561de33ee Add intrinsics for the matrix type 2021-10-21 00:07:10 +01:00
gingerBill
d67d7168e2 Allow scalars with matrices 2021-10-21 00:04:22 +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
3e4c2e4932 Support conj on array and matrix types 2021-10-20 16:03:16 +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
3eaac057da Unify polymorphic_assign_index logic 2021-10-20 01:26:55 +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