Yawning Angel
62d78d61fa
src: Allow clang-style +/- for target features
...
This largely works as expected, except that as far as I can tell,
without explicit annotations added to the caller, (or a
`#force_inline`), the LLVM `target-features` function attribute
gets ignored by the inliner under the rationale of `-sse,-avx,-avx2`
is a subset of `+sse,+avx,+avx2`.
With `#force_no_inline` the correct code does get generated, but in
the regression I am trying to fix, the caller gratuitously also uses
SIMD, leading to horrific performance.
2026-03-19 19:25:23 +09:00
gingerBill
fdbbcc509c
Merge pull request #6438 from odin-lang/bill/interning-things
...
Continuous Compiler Improvements
2026-03-17 14:55:50 +00:00
gingerBill
85c05b238e
Handle bit fields separately
2026-03-17 13:50:49 +00:00
gingerBill
d28e19c957
Minor improve to check if the entity was already there
2026-03-17 13:47:02 +00:00
Jeroen van Rijn
dcb6553b50
Merge pull request #6437 from pawelt/master
...
Handle OOM error in path_linux / _get_working_directory()
2026-03-17 14:46:27 +01:00
pawelt
911f00521c
Handle OOM error in path_linux / _get_working_directory()
2026-03-17 14:37:22 +01:00
gingerBill
153a522228
Use normal i64 arithmetic instead of big-ints for hot path
2026-03-17 13:34:06 +00:00
gingerBill
46936e0e52
General improvements
2026-03-17 12:55:25 +00:00
gingerBill
e18b15e8f0
Move error-only things to the error scopes
2026-03-17 12:16:44 +00:00
gingerBill
9ad3a23f27
More improvements to performance; AtomicFreelist abstraction
2026-03-17 12:10:49 +00:00
gingerBill
b19e89578f
Improve check_struct_fields performance; use CheckerTypePath free list
2026-03-17 11:42:03 +00:00
gingerBill
04cb889aed
Begin interning ScopeMap strings
2026-03-17 11:04:32 +00:00
gingerBill
d5a78a9cf1
Remove canonical hash shortcut
2026-03-17 09:43:16 +00:00
gingerBill
239b86c566
Fix typos
2026-03-17 09:20:14 +00:00
gingerBill
a8c6ea7c8a
Implement a new StringInterner
2026-03-17 09:18:39 +00:00
gingerBill
8f2fd4f886
Disable warning about padding when using alignas in C++
2026-03-17 08:21:13 +00:00
gingerBill
784a202ca4
Merge branch 'master' of https://github.com/odin-lang/Odin
2026-03-17 08:10:18 +00:00
gingerBill
f7ede8632f
Minor changes
2026-03-17 08:10:13 +00:00
Jeroen van Rijn
efccc9c87f
Merge pull request #6434 from Yawning/feature/arm-hw-sha512
...
core/crypto/sha2: Add Aarch64 SHA512 acceleration
2026-03-16 20:51:52 +01:00
Yawning Angel
36a3f691c1
core/crypto/sha2: Add Aarch64 SHA512 acceleration
2026-03-17 04:39:15 +09:00
gingerBill
cb7a87773b
Split keys and slots and allocate them both together
2026-03-16 18:04:25 +00:00
gingerBill
36d5a19115
Replace Scope.elements to use a custom hash map ScopeMap
...
This hash map is robin hood based with a inline slot amount for small scopes
2026-03-16 17:41:58 +00:00
gingerBill
1744f57d01
Use permanent_alloc_item directly rather than through the gb_alloc_item generic interface
2026-03-16 16:03:27 +00:00
gingerBill
3dc68c2e08
In PtrSet permanent_allocator instead of heap_allocator
2026-03-16 15:50:13 +00:00
gingerBill
ef36a18323
Enable some RVO by default
2026-03-16 14:52:07 +00:00
gingerBill
df55f22c9b
Merge branch 'master' of https://github.com/odin-lang/Odin
2026-03-16 14:35:24 +00:00
gingerBill
fc41e44140
Improve bounds checking to minimize its need
2026-03-16 14:29:44 +00:00
Laytan
99dffb344a
Merge pull request #6424 from andzdroid/patch-4
...
encoding/cbor: fix order-dependent partial unmarshals
2026-03-16 15:17:57 +01:00
gingerBill
0bf2d01a04
Work on improving bounds checking with constant known indices and lb_add_local_generated
2026-03-16 14:06:23 +00:00
gingerBill
93852df29e
Support #unroll(N) for for FCD arrays
2026-03-16 12:28:18 +00:00
gingerBill
38d5b234cb
Merge branch 'master' of https://github.com/odin-lang/Odin
2026-03-16 12:21:56 +00:00
gingerBill
e87564b205
Support for in for FCD arrays
2026-03-16 12:21:41 +00:00
Jeroen van Rijn
0b4fabd8b6
Merge pull request #6432 from Yawning/cleanup/sha2
...
core/crypto/sha2: Cleanups
2026-03-16 10:26:13 +01:00
Jeroen van Rijn
ee9cb72cd5
Merge pull request #6431 from Faker-09/FCD_array_proc_group
...
FCD array proc group add `append_fixed_capacity_elems`
2026-03-16 10:24:31 +01:00
Yawning Angel
ccb56de19a
core/crypto/sha2: Add scaffolding for SHA512 acceleration
2026-03-16 16:05:21 +09:00
Yawning Angel
a030fb6596
core/crypto/sha2: Remove the broken Intel intrinsic kludge
2026-03-16 15:52:59 +09:00
Yawning Angel
9051f5a075
core/simd/x86: Fix _mm_blend_epi16
2026-03-16 15:52:59 +09:00
Shane Shrybman
af2d8ca679
FCD array proc group add _elems
2026-03-15 21:45:44 -04:00
gingerBill
5fa274cb6a
-internal-rvo
2026-03-15 22:10:03 +00:00
gingerBill
b3b31cdba7
-internal-llvm-mem2reg
2026-03-15 22:04:27 +00:00
gingerBill
5d165f70e1
Add loads of RVO optimizations for basic 1-value return cases
2026-03-15 21:53:38 +00:00
gingerBill
fa6109ca1e
Properly dispose of LLVMTargetDataRef
2026-03-15 21:35:26 +00:00
gingerBill
38d7f45e64
Fix race condition with code_gen_module
2026-03-15 21:35:02 +00:00
gingerBill
2de214418c
Fix LTO with debug info by passing -g
2026-03-15 21:29:54 +00:00
gingerBill
dc72e8210f
Support proc(q: $Q) -> type_of(Q{}.data[0]) in return types
2026-03-15 21:28:58 +00:00
gingerBill
eecb67cb89
Implement fused nested slice chain optimizations src[a:b][c:d][e:f]...
2026-03-15 21:17:05 +00:00
gingerBill
6b2853d9f1
Improve matrix * vector code gen
2026-03-15 21:03:31 +00:00
gingerBill
12b06887a3
Remove dead code
2026-03-15 20:36:02 +00:00
gingerBill
f8f96905ae
Fix typos
2026-03-15 20:27:14 +00:00
gingerBill
a56c3da149
Support select fast path for or_else
2026-03-15 20:02:48 +00:00