gingerBill
036e38442b
Begin work on lb_emit_asm_template_call
2026-08-09 21:55:36 +01:00
Mihail Moskov
dc022d53b9
fixes call site attribute->arg association when args are ignored
2026-08-06 17:42:13 +03:00
gingerBill
cce7159a55
Merge pull request #7208 from Taylbr/poly-proc-fix
...
Fix: Polymorphic procedures resolving to nil + further fixes
2026-08-05 16:56:34 +02:00
gingerBill
cd1e8293d7
Merge pull request #7185 from subotac/fix/variadic-tuple-arguments
...
fix: pack tuple results into variadic arguments
2026-08-05 16:56:24 +02:00
Mihail Moskov
2f0ced70ab
fixes an obscure segfault on targets that ignore zero sized params in the llvm signature
2026-08-04 18:57:32 +03:00
Brody
7945cf3ac3
Merge branch 'master' into poly-proc-fix
2026-08-05 00:19:06 +10:00
Mihail Moskov
9630660f53
fixes compile error due to no_alias shifting position on procedures with indirect returns
2026-08-04 16:51:04 +03:00
subotac
d36e9a24b1
fix: remove unused variadic element type
2026-08-04 14:02:06 +03:00
Brody
91e0e6ce47
fix: record resolved entity for proc-typed default values
2026-08-04 19:12:08 +10:00
gingerBill
9914a57fc7
Add intrinsics.soa_copy_from_slice and use it within _append_soa_elems replacing the old handwritten unrolled approach
2026-08-03 14:41:04 +01:00
Yawning Angel
cd08f535c8
src: Use llvm.readsteadycounter on Linux RISC-V
...
Why `rdcycle` is kernel only while `rdtime` is not is a mystery to me.
2026-08-02 22:09:22 +09:00
subotac
a4091c5d37
fix: pack tuple results into variadic arguments
2026-08-01 19:48:54 +03:00
Jeroen van Rijn
94be05ead1
Merge pull request #6918 from Kelimion/deprecate-llvm-14
...
Remove LLVM 14 support
2026-07-03 21:35:47 +02:00
gingerBill
d595bf1917
Merge pull request #6924 from tf2spi/6815-patch-simd-min-max
...
Fix misuse of lb_emit_(min|max) in simd_(min|max)
2026-07-03 16:34:08 +01:00
gingerBill
328f511576
Merge pull request #6939 from tf2spi/6832-no-code-regen
...
Avoid code regeneration for fns in unroll
2026-07-03 13:06:56 +01:00
misomosi
ee1cad0fcc
Avoid code regeneration for fns in unroll
2026-07-03 00:46:17 -04:00
misomosi
b5e3b08a8c
Remove use of llvm.(max|min)num in SIMD builtins
2026-07-02 09:56:38 -04:00
MauriceElliott
56cee0c2cf
fix: made suggested changes to add a playdate subtarget, updated help text and reduce required build flags for playdate to just the subtarget, no-movt and cortex-m7 added to default on playdate subtarget flag.
2026-07-01 21:18:28 +01:00
misomosi
f276d77c0c
Fix misuse of lb_emit_(min|max) in simd_(min|max)
2026-07-01 10:59:03 -04:00
Jeroen van Rijn
2d2979a5f2
Remove old pass manager
2026-06-30 22:44:28 +02:00
MauriceElliott
a3fa3476c6
feat(arm32 cdecl): Added thumb as the triple for cortex-m7. Updated the calling convention for cortex-m7 arm32 micro processors as the soft float register was being used when calling across the C ABI boundary causing guff data to be passed.
2026-06-30 20:07:36 +01:00
misomosi
12e8ba8d66
Use lb_add_values_to_array for cvarargs
2026-06-29 10:01:50 -04:00
A1029384756
8ccee66157
[stack-canaries] fixed platform behavior
2026-06-12 23:27:32 -04:00
A1029384756
2373fabe47
[stack-canaries] added protection modes
2026-06-12 22:57:39 -04:00
A1029384756
da742fc526
[no-plt] enable no-plt behavior on linux arm64 and amd64 targets
2026-06-08 10:58:05 -04:00
gingerBill
1c9fa5d0b7
Merge pull request #6731 from odin-lang/bill/expand-values-operator
...
Support `**` as `expand_values` operator: `**x` == `expand_values(x)`
2026-06-05 11:42:08 +01:00
gingerBill
a479eb7775
Support @(link_section=<string>) for procedures
2026-06-02 13:09:40 +01:00
gingerBill
fb8a9d0839
Support ** as expand_values operator: **x == expand_values(x)
2026-05-25 10:28:15 +01:00
kalsprite
98d6e0c26a
ARM chunking logic, improved docs
2026-05-20 17:55:29 -07:00
kalsprite
ae4b94fbd0
fix overloaded call
2026-05-20 16:57:05 -07:00
gingerBill
a91725f305
Add simd.interleave + simd.deinterleave
2026-05-19 21:32:09 +01:00
gingerBill
a3240373ac
Allow simd.(reduce_any|reduce_all) to work with #simd integers
2026-05-19 15:33:45 +01:00
gingerBill
7b97530443
Add intrinsics.c_var_*
2026-04-28 15:00:53 +01:00
gingerBill
68942ce53d
Genericize simd_approx_recip_(sqrt) to allow for AVX and AVX512 intrinsics if enabled
2026-04-08 10:56:52 +01:00
gingerBill
6f7226e692
Add intrinsics.simd_pairwise_(add|sub)
2026-04-07 15:45:50 +01:00
gingerBill
6e09ce9a04
intrinsics.to_bits_signed; simd.signbit
2026-04-07 15:25:41 +01:00
gingerBill
5de18d30f3
Add intrinsics.simd_approx_recip and intrinsics.simd_approx_recip_sqrt
2026-04-07 14:35:04 +01:00
gingerBill
885db93e20
Add intrinsics.simd_sums_of_n
2026-04-07 13:18:03 +01:00
gingerBill
30b6fab120
Fix simd.scatter/simd.gather for LLVM 22
2026-04-07 11:46:57 +01:00
gingerBill
ac1b5aea0f
Add intrinsics.simd_odd_even; More core:simd operations
2026-04-07 11:35:20 +01:00
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
04cb889aed
Begin interning ScopeMap strings
2026-03-17 11:04:32 +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
5d165f70e1
Add loads of RVO optimizations for basic 1-value return cases
2026-03-15 21:53:38 +00:00
gingerBill
bb2e42faa6
More uses of SSA aggregation values
2026-03-15 19:49:26 +00:00
gingerBill
a0685f0511
Add intrinsics.likely and intrinsics.unlikely
2026-03-15 15:39:52 +00:00
gingerBill
f1dbe9c242
[dynamic; N]T proof of concept: fixed capacity dynamic array (akin to small_array.Small_Array(N, T))
2026-03-11 16:46:33 +00:00
Jeroen van Rijn
5d94c01e47
Disable LLVMTailCallKindMustTail under LLVM 18
2026-02-21 23:29:32 +01:00
gingerBill
6f7a64a47d
Change LTO rules for all platforms
2026-02-04 17:15:48 +00:00
Jesse Meyer
b8276065f9
Merge branch 'master' into lto-support
2026-02-03 20:52:52 -05:00