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
gingerBill
ebca0398a7
Remove need for alignment lb_struct_has_padding_prefix
2021-10-02 16:06:42 +01:00
gingerBill
444fedd8d4
Heavily improve the LLVM struct type generation to improve ABI
2021-10-02 15:45:46 +01:00
gingerBill
bd1e1c66f3
Merge pull request #1188 from krux02/minor-fix-3
...
fix #1187
2021-09-29 19:22:56 +01:00
gingerBill
f99bea12c7
Allow uintptr <-> [^]T
2021-09-29 16:36:05 +01:00
Jeroen van Rijn
6f04c61bdf
Fix -collection help typo.
2021-09-28 19:59:44 +02: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
Jeroen van Rijn
f7bf55af4a
Merge pull request #1194 from Kelimion/define
...
Allow `-define:name=string`.
2021-09-25 09:56:51 -07:00
Jeroen van Rijn
2c055b0972
Allow -define:name=string.
...
Slightly rewrote `build_param_to_exact_value` parsing logic.
First, try to parse as a bool, then as an integer or float.
If both fail, treat the value as a string.
To force a string define for e.g. `true`, use `-define:name='true'`.
2021-09-25 18:11:30 +02:00
gingerBill
fa0d58f96e
Correct f64 -> u128/i128 generation
2021-09-25 15:38:56 +01:00
gingerBill
8c4197af38
Add #load_or(path_string, default_byte_slice)
2021-09-23 23:32:46 +01:00
gingerBill
374f98356c
Merge branch 'master' of https://github.com/odin-lang/Odin
2021-09-23 23:25:26 +01:00