-
ade6840610
wcc: N_DOT-base address arithmetic for [N]T-field index (#135)
Hojun-Cho
2026-05-26 22:56:00 +09:00
-
3986818172
wcc: compound-assign load-op-store for indexed + chained-ptr-field lvalues (#133)
Hojun-Cho
2026-05-26 22:27:32 +09:00
-
36bf60350c
wcc: nodeisunsigned N_INDEX reads stamped type_ (#134)
Hojun-Cho
2026-05-26 21:28:14 +09:00
-
4acab6e0bb
wcc: cgen N_CALL "len" TY_ARRAY/TY_SLICE/TY_STR intercept (#131)
Hojun-Cho
2026-05-26 20:39:03 +09:00
-
bb6f8406c7
lib/strconv: stof_data left_shift_table + pow5_table (#106 fold-2)
Hojun-Cho
2026-05-26 20:01:47 +09:00
-
e28d6b2e9d
lib/math: NAN/INF bits + flattened F64_EXPBIAS (#106 fold-1b)
Hojun-Cho
2026-05-26 19:19:48 +09:00
-
e6beb566ea
wcc: narrow integer pointer-deref load width via localloadop (#116)
Hojun-Cho
2026-05-26 19:14:14 +09:00
-
e9620953a0
lib/math: F32 family + f32bits/f32frombits + floatinfo struct (#106 fold-1a)
Hojun-Cho
2026-05-26 19:10:02 +09:00
-
0a2747ce5b
wcc: collapse exprfloatkind structural body onto checker stamp (#121)
Hojun-Cho
2026-05-26 18:30:18 +09:00
-
1c4cea4e2c
wcc: exprfloatkind structural/stamp floatness-disagreement bridge (#121)
Hojun-Cho
2026-05-26 17:46:39 +09:00
-
98e166504f
wcc: stamp N_IDENT-callee destructure bindings in checker (#121)
Hojun-Cho
2026-05-26 17:27:44 +09:00
-
7d7ed964b0
wcc: f32 array-element store from X0 (#122)
Hojun-Cho
2026-05-26 14:46:01 +09:00
-
0917fee48d
wcc: float array-element loads to X0 + indexed-float consumer (#119)
Hojun-Cho
2026-05-26 13:06:42 +09:00
-
a1dff13ec1
wcc: stamp un-suffixed f32-context float literals (#104 fold-2)
Hojun-Cho
2026-05-26 12:06:47 +09:00
-
acaf0152da
wcc: narrow f32-typed float literals at materialisation (#104 fold-1)
Hojun-Cho
2026-05-26 11:19:37 +09:00
-
345325838f
lib/sort: faithful search + lbisect + rbisect port
Hojun-Cho
2026-05-26 10:54:35 +09:00
-
3a0c7442d4
wcc: opaque assignability sink + reinterpret-cast verify (#108)
Hojun-Cho
2026-05-26 10:29:04 +09:00
-
f4970d886c
wcc: opaque use-guards — reject every unsized use (incl tuple/tagged, recursive) (#108)
Hojun-Cho
2026-05-26 09:23:50 +09:00
-
3a18d2cfe6
wcc: add the opaque abstract type (kind + UNDEFINED sentinel + name-binding) (#108)
Hojun-Cho
2026-05-26 09:02:08 +09:00
-
d9cfb91cb9
types: add INT/UINT limit constants, derived from size(int) (#114)
Hojun-Cho
2026-05-26 08:31:41 +09:00
-
b1c598651f
types: add SIZE/UINTPTR limit constants
Hojun-Cho
2026-05-26 03:03:24 +09:00
-
5e4d67d90a
check: widen const def-ref to declared int type in def init (#113)
Hojun-Cho
2026-05-26 02:39:35 +09:00
-
9a265a31f5
wcc: name-bind the size type in type position (#85 fold-2)
Hojun-Cho
2026-05-26 01:55:54 +09:00
-
bd7181ae1f
wcc: add the size primitive type (TY_SIZE), classify as unsigned int (#85)
Hojun-Cho
2026-05-26 01:26:03 +09:00
-
68dbb77d6c
test: combined.ww freshness gate in phase-2 (#110)
Hojun-Cho
2026-05-26 01:07:58 +09:00
-
529eb51af3
selfhost: resync smoke.combined.ww to current lib/types (#110)
Hojun-Cho
2026-05-26 01:07:25 +09:00
-
330792b884
lib/math: checked sat_subu* unsigned saturating subtract (#28)
Hojun-Cho
2026-05-25 17:11:17 +09:00
-
c40b2df097
lib/types: add U*_MIN and RUNE_MIN
Hojun-Cho
2026-05-25 17:11:17 +09:00
-
4578ce98a0
selfhost: resync w6c/wwdump combined.ww to current wcc source (#109)
Hojun-Cho
2026-05-26 00:33:50 +09:00
-
f12676b880
test: 952 add frexpf64 runtime rows
Hojun-Cho
2026-05-25 16:48:14 +09:00
-
9311e6ca4e
lib/math: math::floats fold-2a frexpf64 decompose
Hojun-Cho
2026-05-25 16:48:14 +09:00
-
b4752aad21
test: 952 add issubnormalf64 + normalizef64 runtime rows
Hojun-Cho
2026-05-25 15:06:25 +09:00
-
263257f2c1
lib/math: math::floats fold-2a issubnormalf64 + normalizef64
Hojun-Cho
2026-05-25 15:06:19 +09:00
-
8182342a9d
test: 956 branched f64-tuple receive across all 3 forms, run + cs==ww byte-id (#105)
Hojun-Cho
2026-05-25 16:23:47 +09:00
-
ec19d0ad20
cgen: tuple receive spills f64 word from XMM, not integer reg (both stages, #105)
Hojun-Cho
2026-05-25 16:23:47 +09:00
-
4c4006d854
test: 955 add negative-f64-lit compare rows (#103 FACE X)
Hojun-Cho
2026-05-25 15:38:47 +09:00
-
0388cb7a26
test: 955 f64 XMM-materialise run + cs==ww byte-id (#103)
Hojun-Cho
2026-05-25 15:26:48 +09:00
-
c9e39c6782
cgen: f64-typed int-literal + tuple-field materialize in X0 (both stages, #103)
Hojun-Cho
2026-05-25 15:26:43 +09:00
-
e784968dd8
test: 954 add struct-exclusion control row (#102 over-catch guard)
Hojun-Cho
2026-05-25 14:45:04 +09:00
-
734c0c36e5
test: 954 16B tuple-from-call receive cs==ww byte-id + cstage run (#102)
Hojun-Cho
2026-05-25 14:29:41 +09:00
-
6a586cf792
cgen: wwstage cglet spills both eightbytes of a 16B tuple-from-call receive (#102)
Hojun-Cho
2026-05-25 14:29:34 +09:00
-
60c3e51dc5
test: 953 add #98 XMM-pressure row (myf.g() as 1-of-3 f64 args, MOVSD->X2)
Hojun-Cho
2026-05-25 14:04:07 +09:00
-
ab22900ad1
test: 953 f64 cross-module return cast/arg cs==ww byte-id + cstage run (#98/#101)
Hojun-Cho
2026-05-25 13:51:13 +09:00
-
7b3abf0ec5
cgen: wwstage fnretlookup resolves cross-module callee f64 return type (#98/#101)
Hojun-Cho
2026-05-25 13:48:31 +09:00
-
6f8b658c17
lib/math: inline floats f64bits/f64frombits reinterpret deref
Hojun-Cho
2026-05-25 13:29:35 +09:00
-
389f314473
test: math::floats fold-1 runtime regression
Hojun-Cho
2026-05-25 13:17:47 +09:00
-
253f13fa3b
lib/math: port math::floats fold-1 (f64 classify/sign/bits)
Hojun-Cho
2026-05-25 13:14:10 +09:00
-
ec184aade7
test: f64 cgen deref-load + NaN-compare runtime regression (#96/#97)
Hojun-Cho
2026-05-25 13:04:14 +09:00
-
fa136d0b88
cgen: f64 compare consults parity flag for NaN, 4 relops (both stages, #97)
Hojun-Cho
2026-05-25 12:40:23 +09:00
-
2f2a73bd41
cgen: f64 deref-load -> MOVSD/MOVSS into X0 (both stages, #96)
Hojun-Cho
2026-05-25 12:27:19 +09:00
-
0d1ae17dd0
check: def rhs const-fold resolves sibling/imported defs + casts (#88)
Hojun-Cho
2026-05-25 11:16:08 +09:00
-
b7e1ad1a4b
lib/math: port math::checked (overflow + saturating arithmetic)
Hojun-Cho
2026-05-25 11:09:55 +09:00
-
5a0427ef32
cgen: N-ary tuple destructure positional store + loud-stop (both stages, #83)
Hojun-Cho
2026-05-25 09:34:05 +09:00
-
1304db8871
cgen: *p=sliceval deref store -> 3-word (both stages, #79)
Hojun-Cho
2026-05-25 02:59:40 +09:00
-
ab9de65b8e
cgen: sub-slice ptr = base + lo*esz (both stages, #76)
Hojun-Cho
2026-05-25 02:26:15 +09:00
-
8b23ff3517
cgen: sub-slice cap = base_cap - lo
Hojun-Cho
2026-05-25 01:12:38 +09:00
-
324df92e1d
cgen: unify cstage slice-let onto shared 3-word store path
Hojun-Cho
2026-05-25 00:49:47 +09:00
-
451e2ebec9
cgen: slice-elem store/read -> 3-word via kind-OR (both stages)
Hojun-Cho
2026-05-25 00:20:16 +09:00
-
7bb40d924f
cgen: merge byte-identical str+slice cgassign arms onto kind-gates -- Phase 2 C4.4
Hojun-Cho
2026-05-24 22:39:04 +09:00
-
3637993bb2
cgen: collapse redundant TY_STR esz special-cases onto str.sub -- Phase 2 step-3 Fold 2
Hojun-Cho
2026-05-24 18:01:32 +09:00
-
3d7c707bd2
cgen: ww str for-range loop-var narrows to MOVZBQ -- Phase 2 step-3 Fold 1 (align-up)
Hojun-Cho
2026-05-24 17:29:20 +09:00
-
80527f3868
cgen: str a,s=call() N_MASSIGN tuple-elem store -> 3-word -- Phase 2 G3 (both stages)
Hojun-Cho
2026-05-24 16:54:14 +09:00
-
b51a7daa25
cgen: str chained <expr>.field = v store -> 3-word -- Phase 2 G2 (both stages)
Hojun-Cho
2026-05-24 16:18:49 +09:00
-
c6929231dc
cgen: str arr[i].field = v store -> 3-word -- Phase 2 G1 (both stages)
Hojun-Cho
2026-05-24 15:35:37 +09:00
-
c3bbe17163
cgen: str arr[i].field read -> 3-word -- Phase 2 C4.6 arrfield (both stages)
Hojun-Cho
2026-05-24 14:57:05 +09:00
-
877a1af6d3
cgen: str tuple-positional element read -> 3-word -- Phase 2 C4.6 S3 (both stages)
Hojun-Cho
2026-05-24 14:22:25 +09:00
-
634cbefc22
cgen: str chained-*struct field read -> 3-word -- Phase 2 C4.6 caseB (both stages)
Hojun-Cho
2026-05-24 13:57:20 +09:00
-
90deeb3821
cgen: str N_DOT field read -> 3-word {ptr,len,cap} -- Phase 2 C4.6 (both stages)
Hojun-Cho
2026-05-24 13:31:58 +09:00
-
97707155ae
cgen: str N_INDEX read -> 3-word {ptr,len,cap} -- Phase 2 F2 (both stages)
Hojun-Cho
2026-05-24 12:27:15 +09:00
-
fb4c567e0d
wcc: populate str.sub = u8 -- Phase 2 F1 foundation (both stages)
Hojun-Cho
2026-05-24 09:34:54 +09:00
-
4db680690a
test/wcc/928: runtime coverage for str byte-index (C2) + str-into-tagged-union (C4.8)
Hojun-Cho
2026-05-24 09:19:20 +09:00
-
b416e7114e
cgen: fold str tagged-variant payload store onto slice arm (both stages)
Hojun-Cho
2026-05-24 09:00:53 +09:00
-
a5ca21ddba
cgen: str index-stride via type table, not literal 1 (both stages)
Hojun-Cho
2026-05-24 09:00:36 +09:00
-
1140a590bf
wcc: str -> 24B {ptr,len,cap}, 3-reg ABI -- parity with []u8 (both stages)
Hojun-Cho
2026-05-24 06:40:59 +09:00
-
d9345555c0
rt: bump-over-mmap allocator (rt_segmalloc + rt_free no-op)
Hojun-Cho
2026-05-24 07:15:38 +09:00
-
f45caf1cd9
selfhost/cmd/wcc: index-base esz from n.type_.size + delete indexbaseesz (#72, A.6.3k)
Hojun-Cho
2026-05-24 03:16:14 +09:00
-
0763377806
selfhost/cmd/wcc: dotchainresolve walks tinfo.fields (#71, A.6.3j)
Hojun-Cho
2026-05-24 02:35:53 +09:00
-
6971f57356
selfhost/cmd/wcc: collapse chained-dot offset-emit onto tinfo.fields + delete dotinnerstructptr (#70, #12)
Hojun-Cho
2026-05-24 01:41:05 +09:00
-
e5092709e4
selfhost/cmd/wcc: drop indexvaluetnode from cgassign + delete 3 retired AST-walkers (#69, #61d)
Hojun-Cho
2026-05-24 00:16:14 +09:00
-
901ddf20b9
selfhost/cmd/wcc/cgenutil: tagged-store machinery reads tinfo.params (#68)
Hojun-Cho
2026-05-23 22:57:13 +09:00
-
aec48e8c13
selfhost/cmd/wcc: matchscrutt returns scrutinee node, gate on istaggedtype (#67)
Hojun-Cho
2026-05-23 21:55:52 +09:00
-
3036ba766d
selfhost/cmd/wcc: type-key tagged variant match (#66, Phase-N step 3)
Hojun-Cho
2026-05-23 21:22:24 +09:00
-
0fde4beeb4
selfhost/cmd/wcc: peel NAMED in elemissignedc + refresh #63 comments (#65)
Hojun-Cho
2026-05-23 19:54:00 +09:00
-
3866ea24f5
selfhost/cmd/wcc/check: build per-decl TY_NAMED in tinfofornode (#64, Phase-N step 2)
Hojun-Cho
2026-05-23 19:33:04 +09:00
-
ae6a59a355
selfhost/cmd/wcc: peel TY_NAMED in 5 structural walkers (#63, Phase-N step 1)
Hojun-Cho
2026-05-23 18:44:12 +09:00
-
e0c0f75b2a
selfhost/cmd/wcc/check: flatten tagged spreads + iserror on tinfo.params (#61a)
Hojun-Cho
2026-05-23 17:36:39 +09:00
-
38d6eb667c
selfhost/cmd/wcc: inline N_INDEX elem tinfo at 3 tagged push/index sites (#60)
Hojun-Cho
2026-05-23 17:04:31 +09:00
-
827a05e548
selfhost/cmd/wcc/cgenutil: exprprimresolved N_DOT off dotfieldtnode (#59)
Hojun-Cho
2026-05-23 16:10:46 +09:00
-
8ccda588c6
selfhost/cmd/wcc/cgenutil: trim rhstaggedabicall N_DOT onto n.type_ (#58, A.6.3i-phase-2)
Hojun-Cho
2026-05-23 15:41:31 +09:00
-
6c9a3b369e
selfhost/cmd/wcc/check: populate tinfo.fields + .tupleelems (#57, A.6.3i-phase-1)
Hojun-Cho
2026-05-23 15:13:07 +09:00
-
8d4a9700a0
selfhost/cmd/wcc/cgenutil: collapse slice+str N_DOT arms (#56, A.6.3h)
Hojun-Cho
2026-05-23 14:39:05 +09:00
-
8da14147b3
selfhost/cmd/wcc/cgenutil: collapse N_DOT arms onto n.type_ (#55, A.6.3g)
Hojun-Cho
2026-05-23 13:59:06 +09:00
-
908875682a
selfhost/cmd/wcc/cgenutil: collapse nullableptrtag onto tinfo.params (#50 phase 2, A.6.3f-b)
Hojun-Cho
2026-05-23 02:21:53 +09:00
-
26724feefb
selfhost/cmd/wcc/check: populate TY_TAGGED.params (#50 phase 1, A.6.3f-a)
Hojun-Cho
2026-05-23 01:51:29 +09:00
-
883665e962
selfhost/cmd/wcc/cgenutil: collapse fieldsize onto tinfo (#49, A.6.3e)
Hojun-Cho
2026-05-23 01:28:38 +09:00
-
a828c036d0
selfhost/cmd/wcc/cgenutil: collapse slotsize onto tinfo (#48, A.6.3d)
Hojun-Cho
2026-05-23 00:55:44 +09:00
-
68219a119c
selfhost/cmd/wcc/cgenutil: collapse localloadop onto tinfo (#47, A.6.3c)
Hojun-Cho
2026-05-23 00:11:05 +09:00
-
747279c029
selfhost/cmd/wcc: collapse typenameisunsigned onto tinfo (#52, A.6.3c-cast)
Hojun-Cho
2026-05-22 23:44:31 +09:00
-
3eef2828c6
selfhost/cmd/wcc: stamp typed-suffix N_FLOATLIT (#51b)
Hojun-Cho
2026-05-22 23:12:07 +09:00
-
1ce0f638bf
selfhost/cmd/wcc: stamp typed-suffix N_INTLIT (#51, #52 precursor)
Hojun-Cho
2026-05-22 22:55:54 +09:00