Commit Graph

  • 1b82c52803 only enable priority thread running on initial run loop; do not pay the cost every run loop iteration Ryan Fleury 2025-09-15 17:18:59 -07:00
  • 2a8ca37cb3 record & restore target window on runs Ryan Fleury 2025-09-15 14:10:30 -07:00
  • c7bb49092f radbin dump: isolate output bundling on lane 0 Ryan Fleury 2025-09-15 13:28:43 -07:00
  • cf94b3757e wide rdi dumping Ryan Fleury 2025-09-15 13:02:32 -07:00
  • 26606d7895 do not strip enums/aliases on array index ops Ryan Fleury 2025-09-15 11:32:22 -07:00
  • e021079d05 bump rdi encoding version Ryan Fleury 2025-09-09 08:28:08 -07:00
  • b1609017c5 inline xxhash functions Nikita Smith 2025-09-08 12:32:38 -07:00
  • 763bb57459 revert hasher Nikita Smith 2025-09-08 12:32:22 -07:00
  • 98a05728b3 add check for whether weak symbol is resolved Nikita Smith 2025-09-07 21:50:34 -07:00
  • fc0a7d51d3 warning fixes Nikita Smith 2025-09-07 21:14:57 -07:00
  • 58e3af5b3c test for linking using first and second lib headers Nikita Smith 2025-09-07 21:10:35 -07:00
  • bbe430cc2f write first linker member header with symbol names grouped by member Nikita Smith 2025-09-07 21:13:13 -07:00
  • 24b427fe72 delete unused blake3 headers Nikita Smith 2025-09-07 19:50:31 -07:00
  • ee3832ea3b parallel for lib symbol search Nikita Smith 2025-09-07 21:11:12 -07:00
  • fb46d0bba4 sort symbol names in first member header Nikita Smith 2025-09-07 19:46:58 -07:00
  • 7193986305 binary search for strings Nikita Smith 2025-09-07 19:36:47 -07:00
  • 00536f7ea8 rewrite set linked symbol logic to respect declaration order in obj symbol table Nikita Smith 2025-09-07 16:12:45 -07:00
  • 8a22910d9b add "Links" log type for diagnosing linked lib members Nikita Smith 2025-09-07 16:07:39 -07:00
  • 082f6cf6fd fix free block check and remove unused free_size field Nikita Smith 2025-09-07 14:24:15 -07:00
  • 8f749f4239 use global symbol table to detect duplicate imports Nikita Smith 2025-09-06 16:15:25 -07:00
  • 7cea036bc1 clean up pass over symbol table Nikita Smith 2025-09-06 11:44:04 -07:00
  • 222c220d99 make xxhash API funcs static and hash string size too Nikita Smith 2025-09-06 11:33:35 -07:00
  • 80b65bc0fb fix treatment of unitless pdbs Ryan Fleury 2025-09-08 16:06:45 -07:00
  • 069d683690 fix crash when obj does not have debug info Nikita Smith 2025-09-06 00:21:37 -07:00
  • 3459070f71 remove windows.h from blake3 Nikita Smith 2025-09-05 23:48:38 -07:00
  • a6432cce8e improve unresolved symbol errors Nikita Smith 2025-09-05 18:27:25 -07:00
  • d92f45784d rename defined symbol to obj ref, as the symbol table no longer has scopes and it makes no sense to refer to them that way Nikita Smith 2025-09-03 13:41:05 -07:00
  • 21163264d4 redirect entry point to CRT version if name is inferred Nikita Smith 2025-09-03 13:04:13 -07:00
  • a11406ac51 declare thunk symobls as functions Nikita Smith 2025-09-03 12:58:34 -07:00
  • 40d6ce2f59 do not return zeroes for top-level structures in pdb parser; ensure you have a top-level readable pointer, always Ryan Fleury 2025-09-06 09:53:04 -07:00
  • 0c161f83c7 fix clang Ryan Fleury 2025-09-05 17:09:01 -07:00
  • 23a68faadd rdim2 -> rdim; p2r2 -> p2r Ryan Fleury 2025-09-05 17:06:19 -07:00
  • 51ef166e60 eliminate all old conversion/baking code Ryan Fleury 2025-09-05 17:02:56 -07:00
  • 78530fb10d merge p2r2 into original p2r, delete old conversion path; replace pdb -> breakpad converter & dependency on old converter Ryan Fleury 2025-09-05 16:35:35 -07:00
  • a2b4e7bdc5 fix missing null voff in scope voff data section Ryan Fleury 2025-09-05 16:02:38 -07:00
  • 11373f4432 disable COFF group info generation Nikita Smith 2025-09-03 11:13:13 -07:00
  • f2ee135439 fix up symbols visibility Nikita Smith 2025-09-02 23:42:21 -07:00
  • 56c43ad614 clean up HashTable, removed unused command line switches, added list wrapper for alt names, added natvis for HashTable, AltNameList, MergeDirectiveList, and IncludeSymbolList Nikita Smith 2025-09-02 23:19:30 -07:00
  • 6a3d7e65f3 remove year from the copyright Nikita Smith 2025-09-02 22:29:30 -07:00
  • e88dc44f31 clean up debug leftovers Nikita Smith 2025-09-02 22:23:30 -07:00
  • 580303b0dd emit jump thunks for imports only when needed Nikita Smith 2025-09-02 22:20:34 -07:00
  • 43e81b934b move weak symbol replacer to the symbol table layer Nikita Smith 2025-09-02 22:15:31 -07:00
  • 8d75497bba do not set function pad min switch by default Nikita Smith 2025-09-02 22:04:33 -07:00
  • 0b0a2664d1 merge .idata with .rdata Nikita Smith 2025-09-02 22:04:02 -07:00
  • a64f8f4196 clean up over base strings in the linker layer Nikita Smith 2025-09-02 22:02:48 -07:00
  • 9f6da0ec63 simplify section removal and purging Nikita Smith 2025-09-02 22:01:02 -07:00
  • 43b35d43dc change lib sort to preserve input order Nikita Smith 2025-09-02 21:59:00 -07:00
  • 845e225e81 push alt name strings after they are copied to the config arena Nikita Smith 2025-09-02 21:57:41 -07:00
  • fdad3f4f58 natvis for lib member ref Nikita Smith 2025-09-02 21:56:48 -07:00
  • 78b1f7e701 optionally emit import thunks Nikita Smith 2025-09-02 21:56:15 -07:00
  • 1aac27095e WIP: reorder input and library search order to match MSVC behavior Nikita Smith 2025-09-01 14:39:19 -07:00
  • 240935f0cc WIP: use MSVC rule for COMDAT symbol replacement Nikita Smith 2025-09-01 14:32:49 -07:00
  • d9eb26a830 infer subsystem when only entry point is specified Nikita Smith 2025-08-27 13:18:09 -07:00
  • b0db2b19f8 move entry point name redirection helper to MSCRT layer Nikita Smith 2025-08-27 13:17:42 -07:00
  • e1b7168605 update weak vs undefined replacement rule Nikita Smith 2025-08-21 15:57:25 -07:00
  • d7cdaa98b5 oops forgot to set enum type Nikita Smith 2025-08-21 15:26:40 -07:00
  • c397b1dfb1 handle common section case Nikita Smith 2025-08-21 15:26:25 -07:00
  • 843de72f64 add U8 atomic exchange for clang and gcc Nikita Smith 2025-08-21 15:25:51 -07:00
  • 0dac1a91db fix u128 make Nikita Smith 2025-08-21 15:21:18 -07:00
  • fc4e269211 ignore sign conversions in stb_sprintf.h Nikita Smith 2025-08-21 15:16:52 -07:00
  • daf69ff1c7 fix sign conversion in radsort.h Nikita Smith 2025-08-21 15:16:32 -07:00
  • 971f1b9a2f ignore sign conversions in blake3 Nikita Smith 2025-08-21 15:15:19 -07:00
  • 1a9e17ee37 remove invalid normalize helpers for integer vectors (they always produce zero) Nikita Smith 2025-08-21 15:10:04 -07:00
  • e0c409e3f4 move prototype decl to base_core.h to fix implicit function usage Nikita Smith 2025-08-21 14:30:48 -07:00
  • 3bd8f0e1d5 fix argument expansion in github actions and build.bat Nikita Smith 2025-08-21 14:16:49 -07:00
  • 41fe8a7410 merge undefined and weak search passes Nikita Smith 2025-08-21 11:32:20 -07:00
  • b64e1dca9a WIP fix lib push order and sort new inputs Nikita Smith 2025-08-20 17:26:46 -07:00
  • 67e66dc26e WIP switching to serial library search-style, removed lib scope from the symbol table Nikita Smith 2025-08-20 16:45:01 -07:00
  • 330c8ead38 move member queue-attempt flag from symbol to lib struct Nikita Smith 2025-08-20 15:29:32 -07:00
  • f1b22dbe27 change library to use compressed member offsets Nikita Smith 2025-08-20 15:17:11 -07:00
  • 89d496c855 fix replacement rule for weak search library vs undefined Nikita Smith 2025-08-20 14:13:29 -07:00
  • 0ceadff525 maintain input order of objs in PDB Nikita Smith 2025-08-19 14:08:34 -07:00
  • 4eca7f7fea source file / source line map baking Ryan Fleury 2025-09-05 15:12:08 -07:00
  • efb24fb0fa checkpoint on src file / src line map baking Ryan Fleury 2025-09-05 14:18:55 -07:00
  • d2e6e5de5a oops - fix non-allocation in previous part Ryan Fleury 2025-09-05 13:25:12 -07:00
  • 15e9cda7d2 new location info baking, new constants baking Ryan Fleury 2025-09-05 13:20:51 -07:00
  • ee8dc27428 location data / location block baking Ryan Fleury 2025-09-04 16:09:02 -07:00
  • cd77ddb1b7 pdb converter - new location info building for all cases Ryan Fleury 2025-09-04 15:34:19 -07:00
  • 6f9b22b258 plug in new location building code to pdb conversion Ryan Fleury 2025-09-04 15:23:49 -07:00
  • cc9f45299a eliminate separate chunk list for location cases Ryan Fleury 2025-09-04 15:08:17 -07:00
  • fa05bbf2a5 udt member/enum-val layout & nested baking; use rio to pre-fault all commits Ryan Fleury 2025-09-04 14:45:40 -07:00
  • a84142ed77 re-nest enum vals & members into udts; we want to keep the building API flexible with order of member building, and we can assume ~statistically-uniform distribution across all udts, so it makes more sense to just parallelize on udts, and pay the small cost of an upfront per-lane layout. Ryan Fleury 2025-09-04 11:58:36 -07:00
  • 8b83e5ef48 more non-determinism & bug fixes in name map & idx run map building Ryan Fleury 2025-09-04 11:47:09 -07:00
  • 4c3bb98c64 more determinism fixes Ryan Fleury 2025-09-04 10:20:18 -07:00
  • 096b631e8a remove debugging code Ryan Fleury 2025-09-03 18:58:39 -07:00
  • 27f2acd45d further progress/fixes on pdb -> rdi determinism Ryan Fleury 2025-09-03 18:57:42 -07:00
  • 27d4793900 fix line table building non-determinism Ryan Fleury 2025-09-03 14:57:37 -07:00
  • f093ba9d35 fix src file path gathering determinism - was caused by interleaving each lane's non-inline and inline file paths - with different thread counts, these subdivisions will be different, so the order will change Ryan Fleury 2025-09-03 14:54:32 -07:00
  • 6234fb0c49 fix incorrect scope voff serialization offsets Ryan Fleury 2025-09-03 14:36:26 -07:00
  • 955f033043 fix incorrect idx run baking; slots need to be laid out based on *idx counts*, rather than *value counts*! Ryan Fleury 2025-09-03 14:26:29 -07:00
  • e276ce4fb3 stub out src file baking Ryan Fleury 2025-09-03 11:40:36 -07:00
  • 57125fee1b eliminate helpers from string map baking; no point in extra entry points for partial bakes Ryan Fleury 2025-09-03 09:54:23 -07:00
  • 2f9006bb8a bugfix name map baking Ryan Fleury 2025-09-03 09:33:12 -07:00
  • 46ac437e86 name map baking / serialization Ryan Fleury 2025-09-03 09:12:06 -07:00
  • 92f24a043d idx runs baking Ryan Fleury 2025-09-03 07:31:57 -07:00
  • 55b05301a4 expand scope vmap sorting -> all vmaps; do final vmap bakes; do first pass of scope (1 scope -> many locals, many voffs) layout / baking Ryan Fleury 2025-09-03 06:07:36 -07:00
  • cc0d707eb2 eliminate 'lane groups', since we can go wide on the sorts now Ryan Fleury 2025-08-30 11:11:29 -07:00
  • 1d7cd4f4d2 cleanup / radix sort experimentation Ryan Fleury 2025-08-29 18:04:53 -07:00
  • a44fbb0909 parallel radix sort for scope vmap baking Ryan Fleury 2025-08-29 17:41:22 -07:00
  • 8fe4b3524f with sufficient threads, split baking threads into two groups: small # of threads to do expensive 'background' baking tasks, use the rest to do wide predictable baking stuff Ryan Fleury 2025-08-29 13:01:44 -07:00