Commit Graph
403 Commits
Author SHA1 Message Date
gingerBill 7cbb04159d Name nested and anonymous procedures from their enclosing declarations alone so the name never depends on which module names them first 2026-10-04 23:22:32 +01:00
gingerBill cd08004d33 Free the temporary memory of each procedure once it is generated; keep the strings used as keys of the constant string maps permanently 2026-10-03 18:38:09 +01:00
gingerBill e5cc35c445 Lower what LLVM's fast instruction selector cannot select before emitting objects, and declare debug variables through stack slots 2026-10-03 11:02:55 +01:00
gingerBill 29106aaa1e Cache type layouts and union constantability, build nested constants once, create debug files lazily 2026-10-03 01:26:01 +01:00
gingerBill c628768c5e Strip constant parameters from specialized procedure types; fix calling a parenthesized polymorphic callee 2026-10-02 23:11:13 +01:00
gingerBill 38fa57e907 Make global checking and codegen order-independent 2026-10-01 15:01:14 +01:00
corleypc 6c5651638c Merge branch 'master' into lifetime-markers 2026-09-29 16:04:59 +03:00
corley a931018a24 fixes #must_tail on wasm targets 2026-09-29 01:57:49 +03:00
corley 08166787f3 fixes context attributes in dummy procedures 2026-09-23 23:54:51 +03:00
corley bac6130710 lifetime markers for named locals 2026-09-20 15:55:26 +03:00
Senthilnathan 699973abd6 Merge branch 'master' into fix/location-global-initializer 2026-09-16 18:45:52 +05:30
Senthilnathan ed2d5304d1 fix: #location in global variable initializers 2026-09-16 18:42:10 +05:30
gingerBill 9b2cb3277f Merge pull request #7561 from corleypc/simd-masked-crash-fix
Fixes simd gather/scatter and masked load/store randomly crashing the compiler
2026-09-16 13:23:21 +01:00
Mihail Moskov d5db73dc06 fixes simd gather/scatter and masked load/store randomly crashing the compiler 2026-09-14 15:26:46 +03:00
corley 4ce5148e8c fixes simd_select and simd_runtime_swizzle 2026-09-12 18:45:32 +03:00
Jeroen van Rijn 7f6a66302f Merge pull request #7548 from corleypc/simd-recip-fix
Fixes simd_approx_recip and simd_approx_recip_sqrt
2026-09-12 06:49:10 -07:00
corley feebf91fd5 fixes simd_approx_recip and simd_approx_recip_sqrt 2026-09-12 16:27:23 +03:00
Xaryen f4d1cc5e87 Fix #6917 2026-09-12 07:50:04 +09:00
Mihail Moskov c0cd25ba76 simd_abs optimization + fix for unsigned 2026-09-09 17:13:20 +03:00
Jeroen van Rijn 650c558cb9 Merge pull request #7445 from kalsprite/target_feature_empty_element
string_split_iterator fix
2026-08-24 18:03:35 -07:00
kalsprite 7bf266ef93 string_split_iterator fix 2026-08-24 17:32:30 -07:00
Mihail Moskov 74ac336ef1 fixes -o:size 2026-08-24 12:53:05 +03:00
gingerBill 9870cd4c36 Merge pull request #7271 from odin-lang/bill/inline-asm
`asm` templates
2026-08-18 19:19:40 +02:00
kalsprite c6fcad51f8 riscv64: use a Slice for the coerce offsets 2026-08-17 18:54:58 -07:00
gingerBill 645b57be9f Merge pull request #7327 from kalsprite/abi_conformance
ABI Conformance Harness + Fixes
2026-08-17 16:28:01 +02:00
gingerBill 1f2234a4b2 Merge branch 'master' into bill/inline-asm 2026-08-17 11:44:14 +01:00
gingerBill a03d5addfa Merge pull request #7334 from kalsprite/riscv64_arg_coerce
riscv64: read a flattened aggregate's members from their real offsets
2026-08-17 12:40:36 +02:00
kalsprite f7b734c82b deinterleave -> shuffle 2026-08-16 00:24:09 -07:00
kalsprite 95c4004239 switch to shuffle intrinsic since #simd is pow2 2026-08-16 00:16:21 -07:00
kalsprite d52aff5c4b impl riffle for llvm<=20 fallback on interleave 2026-08-15 23:53:54 -07:00
kalsprite ba708a2ad2 riscv64: read a flattened aggregate's members from their real offsets 2026-08-14 19:15:11 -07:00
kalsprite c2389067d2 arm64 HFA eligibility; byval stack slot align on i386, amd64 + callsite; sse eightbyte merge 2026-08-12 23:11:39 -07:00
gingerBill 036e38442b Begin work on lb_emit_asm_template_call 2026-08-09 21:55:36 +01:00
kalsprite ffd7ef024c remove dead simd_rem 2026-08-09 12:04:08 -07: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