Commit Graph

142 Commits

Author SHA1 Message Date
Jeroen van Rijn
40b28a2ded LLVM 14 removal cleanup 2026-06-30 21:12:42 +02:00
gingerBill
62511914de When inserting a constant union into a struct literal, rebuild the struct to be non-named with llvm_const_insert_value_with_rebuild 2026-06-30 12:16:21 +01:00
gingerBill
28a43fd4f7 Short-circuit further for constant unions in the LLVM constant literal syntax 2026-06-30 11:49:35 +01:00
gingerBill
1cdf314015 Remove debug print string 2026-06-29 16:04:24 +01:00
gingerBill
b9a9846b7c Fix constant union stuff against tests 2026-06-29 13:00:44 +01:00
gingerBill
2f3174fe10 Fix llvm_const_cast with constant union literals 2026-06-29 11:41:27 +01:00
gingerBill
feb9b6159e Fix pkg.Constant.field union access 2026-06-29 11:06:34 +01:00
gingerBill
e227c736e6 Fix #6786 2026-06-29 10:49:29 +01:00
korvahkh
0aa6d8f318 Fix #6885
Broadcasting `field = value` compound literals
would assert.
This is because we were checking for a
`field = value` compound before checking
if the types matched, and thus could broadcast.
2026-06-24 16:28:02 -05:00
gingerBill
baef272bbd Support constant compound literals 2026-06-22 12:53:27 +01:00
ARay
912a45769b fix issue 6853:
when iterating the values of an array literal,if one of the values
is a function with multiple returns, it doesn't offset the struct
field index by the number of values.
2026-06-19 16:52:51 +03:00
ARay
3db074900f comment out dead code: val is not used anywhere else in that scope 2026-06-19 15:05:23 +03:00
gingerBill
8d1d126e16 Rearrange context and value_type values of lb_const_value 2026-06-05 10:19:55 +01:00
gingerBill
99992e092f Fix constant array spreading for unions of constants 2026-06-05 10:15:51 +01:00
gingerBill
ea5175d865 Support s: [2]u16 = "hi" 2026-05-02 12:11:39 +01:00
gingerBill
ef275c5c0e Support []int{multiple_returns(), 123} 2026-04-21 17:45:36 +01:00
gingerBill
04cb889aed Begin interning ScopeMap strings 2026-03-17 11:04:32 +00:00
gingerBill
c51391f8cb Fix #5129 2026-03-15 17:15:16 +00:00
gingerBill
a6160770ff Support compound literals for fixed capacity dynamic arrays 2026-03-12 10:03:58 +00:00
ske
9d439bd630 Add broadcasting to strings (fix #1837) 2026-02-14 16:23:51 -03:00
gingerBill
e014181abf Move values construction to after padding has been set 2026-02-02 11:12:42 +00:00
ske
2700fa86d6 fix typo 2025-12-30 22:24:10 -03:00
ske
e4bf5476c3 Fix literal endianness (fix #6068) 2025-12-30 22:08:40 -03:00
korvahkh
f454bbd73c Fix #5894 2025-11-10 07:54:42 -06:00
Laytan
c4d1cd6ee5 fixes for 32bit with regards to typeid 2025-11-04 21:37:29 +01:00
gingerBill
7f2ab31acc Fix constant nil assignment to union of nillable types in backend 2025-11-02 12:04:21 +00:00
gingerBill
f5d080789f Fix union(T){} constant initialization 2025-10-31 09:13:10 +00:00
gingerBill
55ab18f911 Fix #5831 2025-10-22 09:07:46 +01:00
A1029384756
be9384fc8d [llvm-14-fixes] use specific LLVMConst* codepaths for LLVM 14 2025-10-09 12:03:25 -04:00
A1029384756
cfe651e8d2 formatting 2025-10-07 23:26:29 -04:00
A1029384756
7179987ac9 casting 2025-10-07 23:15:12 -04:00
A1029384756
b55cf5f8f4 llvm 14 fixed 2025-10-07 22:58:50 -04:00
gingerBill
89645921e2 Only add packing if the padding is non-zero for a #raw_union constant 2025-09-29 11:00:08 +01:00
gingerBill
e511f07d76 Short circuit for Union{} 2025-09-29 10:45:24 +01:00
gingerBill
10ba956d6a Rudimentary support for some constant struct #raw_union 2025-09-29 10:28:16 +01:00
gingerBill
1f2cedcf78 Remove debug code 2025-09-29 09:53:04 +01:00
gingerBill
4f442c6045 Rearrange const union initialization so that it is priority 2025-09-29 09:51:23 +01:00
gingerBill
dd15a5bc8e Do not need an extra local copy for the slices 2025-09-28 23:32:37 +01:00
gingerBill
6db8943efa Check for empty compound literal early for constants 2025-09-28 23:25:27 +01:00
gingerBill
5b88d2363d Correct failure check for const cast 2025-09-28 23:19:43 +01:00
gingerBill
cbab97fbd7 Use memcpy for local constant slice arrays from a global constant 2025-09-28 22:50:36 +01:00
gingerBill
1df9f1d01d Fix constant union{proc()} 2025-09-28 22:02:25 +01:00
gingerBill
35a32d41e0 Fix Union{} 2025-09-28 21:08:47 +01:00
gingerBill
17204bd1c2 Global const unions with @(rodata) 2025-09-28 20:40:26 +01:00
gingerBill
ffdfbfe2c2 Begin to support constant array of unions 2025-09-28 20:20:26 +01:00
gingerBill
a974c51d57 First step towards constant unions 2025-09-28 19:52:52 +01:00
gingerBill
0233dc5d31 Remove stray 0 2025-09-27 14:15:51 +01:00
gingerBill
ed2b79a63e Completely comment out lb_construct_const_union 2025-09-26 09:35:51 +01:00
gingerBill
a6d5ec2de8 Early short circuit lb_construct_const_union 2025-09-26 09:31:10 +01:00
gingerBill
0ae86dbe87 Ignore further 2025-09-25 12:10:18 +01:00