Commit Graph

2992 Commits

Author SHA1 Message Date
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
gingerBill 445696d660 Support parapoly matrices 2021-10-20 01:06:58 +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
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 4c655865e5 Begin work on matrix type 2021-10-18 16:52:19 +01:00
gingerBill 7aac8df2f2 Add runtime._cleanup_runtime internal call 2021-10-18 12:28:46 +01:00
gingerBill 2c469a39c7 Simplify TIME_SECTION code 2021-10-12 15:09:57 +01:00
gingerBill d0001dc11d Increase system_exec_command_line_app buffer from 4 KiB to 64 MiB, and unify some logic 2021-10-12 13:56:36 +01:00
gingerBill 2ad6aa7886 Copying file contents rather than memory mapping 2021-10-12 11:06:39 +01:00
gingerBill 49c761dc6d Fix typo 2021-10-09 19:11:26 +01:00
gingerBill 2a8d4c5bf5 Disallow or_return within defer 2021-10-09 19:11:10 +01:00
gingerBill d386563344 Correct issue with the generated map type internals; Simplify map rehash logic to utilize resize 2021-10-07 21:23:37 +01:00
gingerBill cb9101e0a0 Simplify lb_gen_map_header 2021-10-07 14:12:47 +01:00
gingerBill af7008aa44 Allow for array programming value constants 2021-10-07 13:41:14 +01:00
gingerBill a463609e4c If an entity is inserted into a scope already exists by the same name, it will not report as an error any more 2021-10-04 12:41:33 +01:00
gingerBill 647fee31f8 Correct offset_of_by_string 2021-10-03 12:34:01 +01:00
gingerBill 8af6b6fa18 Remove debug code 2021-10-03 12:32:51 +01:00
gingerBill f48f06e7b7 Add offset_of_by_string 2021-10-03 12:32:04 +01:00
gingerBill 51b5a973e2 Allow constant string value for the field argument of offset_of 2021-10-03 12:24:54 +01:00
gingerBill 2bdae52fed Add @(init) attribute for procedures, allowing for procedures to be called at startup
These procedures will be called after global variables have been initialized as normal
2021-10-03 11:53:32 +01:00
gingerBill 036fa5cb24 Correct ABI for windows with LLVM 2021-10-02 18:12:34 +01:00
gingerBill 81fe50d623 Add sizes to assert message 2021-10-02 17:48:09 +01:00
gingerBill b9b9bd8612 Add message to assert; add sanity check for possible future behaviour 2021-10-02 17:44:24 +01:00
gingerBill 171a5d6476 Clean up struct_fields_index_by_increasing_offset 2021-10-02 17:43:48 +01:00
gingerBill 00671a59a0 Minor code cleanup for backend; add struct_fields_index_by_increasing_offset for future use 2021-10-02 17:22:56 +01:00