Commit Graph

19049 Commits

Author SHA1 Message Date
kalsprite
90d658f7d9 abi: sign/zero-extend sub-32-bit scalar arguments on every psABI that requires it 2026-08-13 23:31:51 -07:00
kalsprite
81a4bf16fe riscv64: exclude aggregates containing a union from the FP calling convention
checker: keep #raw_union marked when it has a single field, #raw_union must mark on single field
2026-08-13 23:11:02 -07:00
kalsprite
a2f92401d3 sysv: fix a union passed as its last member when that member is narrower 2026-08-13 22:51:07 -07:00
kalsprite
2c947bb173 add riscv abi to ci; uneven unions, bare scalars 2026-08-13 22:49:55 -07:00
kalsprite
32f90a04db add optimization on to harness 2026-08-13 22:11:53 -07:00
kalsprite
98e580404a pack structs whose member alignment LLVM would raise above the target cap
arm64: return a narrow bare vector as itself, not coerced to an integer
2026-08-13 21:52:34 -07:00
kalsprite
a50c9e0a1d switch test harness to odin 2026-08-13 21:51:53 -07:00
kalsprite
1ffcc43b39 generator typo 2026-08-13 21:34:17 -07:00
kalsprite
416619b71b cover every 8-byte bare vector type 2026-08-13 21:30:56 -07:00
kalsprite
1cf1c4103e fix SysV vector ABI: 64-bit slot width, wide-vector return, wrapped-vector return 2026-08-13 21:30:36 -07:00
kalsprite
88c194379c fix SysV vector classification: SSEUp scan, wide-SSE args, short-vector lanes and sub-eightbyte class 2026-08-13 20:48:50 -07:00
kalsprite
f19e33fbdd adjust sizes to match audit 2026-08-13 20:47:16 -07:00
kalsprite
5c5bb38115 enhance abi harness; dont delete build dir 2026-08-13 20:24:38 -07:00
kalsprite
b25497ecd5 matrix, vector align 2026-08-13 20:20:00 -07:00
Jeroen van Rijn
e575197403 Merge pull request #7329 from FourteenBrush/patch-8
Fix out of bounds for zero arg `#load_directory`
2026-08-13 13:14:14 +02:00
FourteenBrush
02adbc11e3 Fix oob for zero arg #load_directory 2026-08-13 12:51:42 +02:00
gingerBill
68bc28e97b Merge pull request #7325 from kalsprite/ordered_numeric_bit_field
fix bitfield intrinsic
2026-08-13 11:14:27 +02:00
gingerBill
cb903df235 #side_effects -> #volatile; Remove dead code 2026-08-13 10:03:00 +01:00
kalsprite
039ee3b63e add alignment canaries 2026-08-13 00:20:27 -07:00
kalsprite
e621a924f5 darwin align(16) max 2026-08-13 00:04:19 -07:00
kalsprite
f5ab81cfa1 simd fix; generator fix 2026-08-12 23:47:27 -07:00
kalsprite
b92e8af434 i128 unwrap aggregate single member structs 2026-08-12 23:29:48 -07:00
kalsprite
1638bd7e9c fix windows ci 2026-08-12 23:16:51 -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
kalsprite
8470c6eda2 i386 64-bit scalar alignment 2026-08-12 23:08:26 -07:00
kalsprite
9a2164ac2e abi test harness 2026-08-12 23:05:14 -07:00
kalsprite
939802e713 fix bitfield intrinsic 2026-08-12 19:23:41 -07:00
Jeroen van Rijn
36d0b056a2 Merge pull request #7324 from kalsprite/sysv_test_gate
fix long -> int64_t for win64
2026-08-13 04:03:49 +02:00
kalsprite
a3573c83cd fix long -> int64_t for win64 2026-08-12 18:52:33 -07:00
gingerBill
4f82bed1f7 Hide debug printing for LLVM's ASM IR 2026-08-13 01:21:38 +01:00
gingerBill
3453643c11 Improve unquote_string_triple to give better error messages on invalid literals 2026-08-13 00:34:28 +01:00
gingerBill
c085a46185 Move #side_effects and #align_stack to the specification list 2026-08-12 23:40:57 +01:00
gingerBill
08f3be70cf Add helper methods to the asm_tables_amd64.cpp 2026-08-12 21:18:10 +01:00
gingerBill
5768668af9 Add did you mean for registers 2026-08-12 20:52:26 +01:00
gingerBill
fa342bb540 Merge pull request #7292 from kalsprite/sysv_source_type
amd64/arm64: classify aggregates from the source type
2026-08-12 19:43:29 +02:00
Jeroen van Rijn
85efa24bdc Merge pull request #7321 from corleypc/float-to-u128-fix
Fixes float to 128-bit int/uint conversion
2026-08-12 19:40:16 +02:00
Jeroen van Rijn
ea0b476c1f Add compiler-rt license info 2026-08-12 19:19:51 +02:00
Mihail Moskov
8329f59edc comma in where to satisfy the vet cerberus :) 2026-08-12 19:50:28 +03:00
Mihail Moskov
6a81351de3 fixes float to 128-bit int/uint conversion 2026-08-12 19:25:46 +03:00
gingerBill
39c5e69f82 Move determine_asm_operand_kind upwards 2026-08-12 16:23:31 +01:00
gingerBill
dbe5761bb0 Minor change 2026-08-12 16:19:58 +01:00
gingerBill
8f389578de Revert build.bat 2026-08-12 16:17:49 +01:00
gingerBill
5eb0239474 Utilize triple quote strings within the C++ asm table generation 2026-08-12 16:09:18 +01:00
gingerBill
ae2c7ead48 Support triple backtick strings 2026-08-12 16:08:58 +01:00
gingerBill
5197806f88 Implement triple quote strings to allow for easier templating purposes 2026-08-12 15:42:36 +01:00
gingerBill
43f078aedc Infer asm #side_effects where possible from the mnemonics 2026-08-12 14:52:37 +01:00
gingerBill
ecb4495e81 Clobber manually specified registers 2026-08-12 14:29:59 +01:00
Jeroen van Rijn
79c2c65bb1 Merge pull request #7319 from corleypc/f32-to-u64-fix
Fixes f32 to 64-bit int/uint conversion
2026-08-12 15:22:17 +02:00
gingerBill
b32846bb35 Minor change to implies_side_effects 2026-08-12 14:16:10 +01:00
Mihail Moskov
6dda0198f0 fixes f32 to 64-bit int/uint conversion 2026-08-12 16:02:49 +03:00