Ryan Fleury
b0841ff2da
first pass at custom load-module exception (long term for JIT)
2026-07-23 20:22:54 -07:00
Ryan Fleury
16c447bb79
eval2: leaf bytecode in ir tree
2026-06-28 07:36:24 -07:00
Ryan Fleury
96cfb441fd
correctly use command titles in native file explorer
2026-06-27 12:07:24 -07:00
Ryan Fleury
0e2b4ac5e7
ui discoverability adjustments
2026-06-27 06:21:31 -07:00
Ryan Fleury
969851b6f0
flip NO_ASYNC; turn on as needed, if a layer requiring it is included
2026-06-27 04:54:30 -07:00
Ryan Fleury
410a8e3afa
eval2: function pointer type parsing/compiling
2026-06-27 04:43:58 -07:00
Ryan Fleury
cae9754099
eval2: fix parsing task popping rules, still give chance to rhs when popping tasks in all cases
2026-06-27 04:25:05 -07:00
Ryan Fleury
b704e797e2
notes
2026-06-27 03:50:17 -07:00
Ryan Fleury
773e6554dc
cycle detection in fully qualified string generation
2026-06-26 20:35:50 -07:00
Ryan Fleury
fdbcf7ccdc
eval2: first pass at c recursive type expression parsing
2026-06-26 16:19:19 -07:00
Ryan Fleury
f1f654ecfd
eval2: simplify expression parsing info, allow child reversal (for parsing non-canonical expression orders into canonical shapes, e.g. Rust-style casts like 123 as float32 -> cast(float32, 123); ptr/array type operators, etc./
2026-06-26 13:20:38 -07:00
Ryan Fleury
60b266a1cc
support size_of and type_of in clike expressions
2026-06-26 11:28:01 -06:00
Ryan Fleury
9491fdf5c2
eval2: split out expression kinds from parse styles of expressions - lets us separate semantic expression tree from frontend, so that we can easily switch frontend
2026-06-26 11:22:43 -06:00
Ryan Fleury
bcbc5e4a2a
eval2: macro argument expression tree parsing
2026-06-26 10:07:02 -06:00
Ryan Fleury
d7393b2f65
eval2: split string -> expr compilation path into frontend / middle end - string -> expr, where expr is a loose structural syntax tree (where we can get macros and stuff without doing typechecking etc.), and expr -> irtree, where irtree is the usual typed / typechecked / ir structured representation - preserve minimal identifier resolution path for parser, but move most resolution things to the middle-end
2026-06-25 15:48:14 -07:00
Ryan Fleury
c2b74260ef
eval2: opkind -> exprkind, prepare for exprs being looser
2026-06-25 13:58:03 -07:00
Ryan Fleury
6b52d68c62
eval2 checkpoint: type operations, constructed types, checkpoint before splitting back to frontend / compiler split - we need to do things with the parse tree that we can't with an ir tree
2026-06-25 13:50:16 -07:00
Ryan Fleury
c1b3461709
eval2: switch to extrusive lists for expression lists - this lets us reuse expression trees. also solve strange isolated unload module events in win32 demon as well
2026-06-25 11:36:18 -06:00
Ryan Fleury
6c309038ce
dbg_engine: ctrl thread - be robust to strange duplicate module unload events
2026-06-25 09:51:13 -06:00
Ryan Fleury
9d651f4bd5
EpicGamesExt -> EpicGames
2026-06-25 09:08:52 -06:00
Ryan Fleury
38c1e2a414
eval2: ptr arithmetic & comparisons
2026-06-25 09:07:34 -06:00
Ryan Fleury
c817d1f136
eval2: type keys checkpoint
2026-06-24 20:39:53 -07:00
Ryan Fleury
296c851272
eval2 checkpoint: casts, function calls, expression-embedded identifier definitions, ternaries, compile-time ternaries
2026-06-24 16:29:57 -07:00
Ryan Fleury
6b841d9959
rdi_make: allow duplicates in bake name map insertions - they become extremely costly to check for, and we don't produce them anyways...
2026-06-24 07:20:06 -06:00
Ryan Fleury
1901e67f39
use synchronous reads for call stack computation, but extend artifact cache with the ability to say that a non-retryable failure occurred, so that we can fall back to stale call stacks
2026-06-23 20:00:57 -06:00
Ryan Fleury
3d6851c57a
rdi_from_Dwarf: count dependency counts correctly when using cached type content hashes
2026-06-23 16:07:53 -07:00
Nikita Smith and Ryan Fleury
4daefad31e
map GNU lib extension
2026-06-23 12:32:52 -07:00
Nikita Smith and Ryan Fleury
765b61152d
sort import library member refs by input index
2026-06-23 12:32:52 -07:00
Nikita Smith and Ryan Fleury
ad20900fc0
import hash table -> hash map
2026-06-23 12:32:51 -07:00
Nikita Smith and Ryan Fleury
8dbced6995
set flag on import member from the originally linked library, otherwise
...
on subsequent passes linker may queue same import
2026-06-23 12:32:50 -07:00
Nikita Smith and Ryan Fleury
84d025e940
force inline string compars
2026-06-23 12:32:50 -07:00
Ryan Fleury
98b7b5859c
rdi_from_dwarf: stub out pointers for now, cache as we go, merge type dependency count calculation with hash computation
2026-06-23 12:32:11 -07:00
Ryan Fleury
28009ec01e
rdi_from_dwarf type dedup hashing experiments checkpoint
2026-06-23 10:05:28 -07:00
Ryan Fleury
a425936f56
run_tests test data download -> fail if curl fails, follow http redirects
2026-06-22 14:42:50 -07:00
Ryan Fleury
fef78609d8
turn off d2r tests for now while new deduper is in progress; better tag skipping in dedup hashing
2026-06-22 14:25:25 -07:00
Martins Mozeiko and Ryan Fleury
401383bbd8
reorganize intrinsic includes to make clang happy
2026-06-22 14:21:01 -07:00
Ryan Fleury
76fa2be5a9
correct arch flags to clang
2026-06-22 13:45:53 -07:00
Ryan Fleury
c8c8e02ab0
Revert "use CL driver when compiling with clang on windows to simplify compile and link lines"
...
This reverts commit ba32d7fdec .
This causes tons of compatibility issues, some of which were preventing
Clang builds on specific Clang versions due to command line
incompatibility between lld-link and link.
2026-06-22 13:44:18 -07:00
Ryan Fleury
e2430fa23e
remove redundant incs of xxhash - undef cpuid macro before xxhash is
...
included, so that we don't have conflicting definitions due to memfun
2026-06-22 13:43:19 -07:00
Ryan Fleury
28d037a924
checkpoint on faster rdi_from_dwarf type/namespace deduping
2026-06-22 13:31:08 -07:00
Ryan Fleury
73e9f3c9da
rdi_from_dwarf: determinism / regression tests
2026-06-21 20:56:46 -07:00
Ryan Fleury
dac63d6bef
fix linux build
2026-06-21 20:47:09 -07:00
Ryan Fleury
286589f4de
rdi_from_pdb: exemplar tests
2026-06-21 20:37:52 -07:00
Ryan Fleury
c890b806d5
pull out test input/exemplar path formation helpers to base; fix torture crash
2026-06-21 20:13:44 -07:00
Ryan Fleury
bc324a9041
remove exemplars from repo; switch to storing on test data server
2026-06-21 19:54:37 -07:00
Ryan Fleury
fa4c003f79
run_tests.bat -> download test data if stale
2026-06-21 16:20:37 -07:00
Ryan Fleury
ed6afcb180
checkpoint on rdi_from_dwarf pass, start addressing O(N lg N) hashing problem for type content, use sibling tags, etc.; remove test inputs from data/, just rely on local folder (filled via data server)
2026-06-21 15:53:38 -07:00
Ryan Fleury
d3d35e40d7
rdi_from_dwarf: use sibling tags to advance in hash path too - set up for deduplicating hash work
2026-06-19 20:53:01 -07:00
Nikita Smith and Ryan Fleury
4f899ac678
update memfun
2026-06-19 20:12:27 -07:00
Nikita Smith and Ryan Fleury
05a024ddb3
remove /RAD_ALT_PCH_DIR
...
* Instead of matching on file path in LF_PRECOMP, loop over the objects
with .debug$P and probe leaves at the index specified in LF_PRECOMP.
If signatures match, use the PCH.
* Demote LNK_Error_PrecompObjNotFound to a recoverable error.
2026-06-19 20:12:27 -07:00