Commit Graph

6714 Commits

Author SHA1 Message Date
kalsprite
8189bb9730 abs const fold 2026-08-17 22:41:22 -07:00
Jeroen van Rijn
0be39571f6 Merge pull request #7367 from kalsprite/c_vararg_diagnostics
c_vararg: fix c_va_start guard and c_va_arg format mismatch
2026-08-18 03:57:34 +02:00
kalsprite
c34ae95e8a c_va_start: test the operand it just checked; c_va_arg: drop the unfed verb 2026-08-17 18:34:09 -07:00
gingerBill
645b57be9f Merge pull request #7327 from kalsprite/abi_conformance
ABI Conformance Harness + Fixes
2026-08-17 16:28:01 +02:00
Jeroen van Rijn
a0b475eef9 Merge pull request #7361 from ssenthilnathan3/fix/recursive-soa-sigbus
Fix: SIGBUS/segfault when compiling recursive #soa slice/dynamic array types
2026-08-17 13:16:18 +02:00
Jeroen van Rijn
e2f1638d4d Merge pull request #7353 from corleypc/modmod-fix
Fixes the %% operator
2026-08-17 13:06:53 +02:00
gingerBill
8eaa640c02 Merge pull request #7358 from kalsprite/eol_diagnostic_line
fix eol diagnostic
2026-08-17 12:41:41 +02: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
gingerBill
b5a746b9b6 Merge pull request #7359 from kalsprite/min_dep_fixed_capacity_break
checker: add the missing `break` in `add_min_dep_type_info`
2026-08-17 12:39:27 +02:00
gingerBill
2791257e28 Merge pull request #7360 from kalsprite/any_int_range_check
check_expr: range-check a constant passed to an `#any_int` parameter
2026-08-17 12:39:16 +02:00
gingerBill
307604381a Merge pull request #7333 from corleypc/constmerge-fix
Reenables LLVMSetUnnamedAddress for global constants merging
2026-08-17 12:33:39 +02:00
Senthilnathan
f6f686392a Merge branch 'master' into fix/recursive-soa-sigbus 2026-08-17 12:53:33 +05:30
Senthilnathan
4fe5719007 Fix SIGBUS/segfault when compiling recursive #soa slice/dynamic array types 2026-08-17 12:48:41 +05:30
kalsprite
72d1829fec #any_int range check constants 2026-08-16 22:08:52 -07:00
kalsprite
55d0aecd92 add missing break on fix dyn 2026-08-16 19:51:27 -07:00
kalsprite
35061af11b fix eol diagnostic 2026-08-16 17:31:59 -07:00
Mihail Moskov
e92c04eb73 Fixes the %% operator 2026-08-16 23:08:24 +03:00
Jeroen van Rijn
0b7b8ba4a2 Set console codepage to utf-8 (on Windows), and restore old one on exit
Avoid mojibake.
2026-08-16 16:16:35 +02:00
Jeroen van Rijn
889ad95c7e Merge pull request #7342 from kalsprite/alpha
quat/cmplx nan cmp & accessors
2026-08-16 12:31:55 +02:00
Jeroen van Rijn
7aa805e22a Merge pull request #7343 from kalsprite/rune_unsigned_mapping
intrinsics.type_integer_to_unsigned(rune) returns f16
2026-08-16 12:28:59 +02:00
Jeroen van Rijn
3eeda58634 Merge pull request #7344 from kalsprite/simd_builtin_diagnostics
simd: enforce the `#simd` construction rules and stop two crashes
2026-08-16 12:17:39 +02:00
Jeroen van Rijn
94528dde45 Merge branch 'master' into pr/7345 2026-08-16 11:19:48 +02:00
Jeroen van Rijn
78b9c31a10 Merge pull request #7346 from kalsprite/bit_set_subset_folding
fix `bit_set` subset/superset constant folding
2026-08-16 11:05:30 +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
a7029ef7b6 bitset subset 2026-08-15 23:25:13 -07:00
kalsprite
885e12d21d and-not fold 2026-08-15 23:06:35 -07:00
kalsprite
5f0251fec2 5791,6748 2026-08-15 22:44:52 -07:00
kalsprite
e53fc6a879 simd [?] type fix; count recovery 2026-08-15 22:23:15 -07:00
kalsprite
69fb453e51 redecl type; pairwise guard 2026-08-15 22:02:06 -07:00
kalsprite
0243398b19 swizzle arg guard 2026-08-15 21:52:07 -07:00
kalsprite
4ceba928c7 fix swizzle and shuffle max size bypass 2026-08-15 21:28:43 -07:00
kalsprite
b2f2b653c5 add pow2 guard on interleave 2026-08-15 21:18:36 -07:00
kalsprite
e699d2185e simd diagnostics 2026-08-15 21:07:17 -07:00
kalsprite
ae742cb9f3 rune unsigned mapping 2026-08-15 20:53:03 -07:00
kalsprite
4cf4607c8b fix #5964 2026-08-15 20:41:22 -07:00
kalsprite
1658e2d841 fix typo on cmplx -> quat 2026-08-15 20:13:25 -07:00
kalsprite
617293c5f0 quat/cmplx nan cmp 2026-08-15 20:08:27 -07:00
kalsprite
db8aa97db7 matrix: take the input-vector load alignment from the vector 2026-08-15 19:56:26 -07:00
Michael Tesař
b17c10162d Fix bit_set upper endpoint representability check 2026-08-16 00:30:42 +02:00
Jeroen van Rijn
5787cbc68b Fix backend support for #unroll on [dynamic]T 2026-08-15 21:34:58 +02:00
kalsprite
38e053b96c i386: cap cmplx / quaternion alignment; abi test: cover a narrow member in front of complex 2026-08-14 23:02:04 -07:00
kalsprite
0fb1721e45 i386: return a complex of eight bytes or fewer in EAX:EDX, not through a hidden pointer
abi test: cover bare f16, complex, rawptr, enum and bit_set
2026-08-14 21:09:26 -07:00
kalsprite
1b57f6e092 remove cpp17 feature 2026-08-14 19:34:49 -07:00
kalsprite
ba708a2ad2 riscv64: read a flattened aggregate's members from their real offsets 2026-08-14 19:15:11 -07:00
kalsprite
eb72d8ffbe arm32: pass homogeneous vector aggregates in the VFP registers
arm32: coerce narrow bare vectors, and return wide ones through a hidden pointer
2026-08-14 18:42:23 -07:00
kalsprite
9047c60ec1 arm32: default to arm1176jzf-s so the gnueabihf triple actually has an FPU,
arm32: implement AAPCS32 homogeneous float aggregates incl unions,
arm32: fix reversed arguments in the small-struct return coercion,abi test: __aeabi_uldivmod so the arm32 corpus links
2026-08-14 18:08:11 -07:00
kalsprite
1e2d91c38b i386: pass and return bare vectors directly, coercing only 8-byte integer vectors,
i386: treat a bit_field as the aggregate it is in C, fixing a segfault on return,
abi test: document the i386 microarch baseline; do not read a signal exit as a type index
2026-08-14 17:38:21 -07:00
corley
de9d6d7dcc Reenables LLVMSetUnnamedAddress for global constants folding 2026-08-14 23:12:25 +03:00