Commit Graph

3010 Commits

Author SHA1 Message Date
Nikita Smith 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
2025-09-06 09:54:22 -07:00
Nikita Smith 21163264d4 redirect entry point to CRT version if name is inferred 2025-09-06 09:54:22 -07:00
Nikita Smith a11406ac51 declare thunk symobls as functions 2025-09-06 09:54:22 -07:00
Ryan Fleury 40d6ce2f59 do not return zeroes for top-level structures in pdb parser; ensure you have a top-level readable pointer, always 2025-09-06 09:53:04 -07:00
Ryan Fleury 0c161f83c7 fix clang 2025-09-05 17:09:01 -07:00
Ryan Fleury 23a68faadd rdim2 -> rdim; p2r2 -> p2r 2025-09-05 17:06:19 -07:00
Ryan Fleury 51ef166e60 eliminate all old conversion/baking code 2025-09-05 17:02:56 -07:00
Ryan Fleury 78530fb10d merge p2r2 into original p2r, delete old conversion path; replace pdb -> breakpad converter & dependency on old converter 2025-09-05 16:35:35 -07:00
Ryan Fleury a2b4e7bdc5 fix missing null voff in scope voff data section 2025-09-05 16:02:38 -07:00
Nikita Smith f2ee135439 fix up symbols visibility 2025-09-05 15:19:31 -07:00
Nikita Smith 56c43ad614 clean up HashTable, removed unused command line switches, added
list wrapper for alt names, added natvis for HashTable, AltNameList,
MergeDirectiveList, and IncludeSymbolList
2025-09-05 15:19:31 -07:00
Nikita Smith 6a3d7e65f3 remove year from the copyright 2025-09-05 15:19:31 -07:00
Nikita Smith e88dc44f31 clean up debug leftovers 2025-09-05 15:19:31 -07:00
Nikita Smith 580303b0dd emit jump thunks for imports only when needed 2025-09-05 15:19:30 -07:00
Nikita Smith 43e81b934b move weak symbol replacer to the symbol table layer 2025-09-05 15:19:30 -07:00
Nikita Smith 8d75497bba do not set function pad min switch by default 2025-09-05 15:19:30 -07:00
Nikita Smith 0b0a2664d1 merge .idata with .rdata 2025-09-05 15:19:30 -07:00
Nikita Smith a64f8f4196 clean up over base strings in the linker layer 2025-09-05 15:19:30 -07:00
Nikita Smith 9f6da0ec63 simplify section removal and purging 2025-09-05 15:19:30 -07:00
Nikita Smith 43b35d43dc change lib sort to preserve input order 2025-09-05 15:19:30 -07:00
Nikita Smith 845e225e81 push alt name strings after they are copied to the config arena 2025-09-05 15:19:30 -07:00
Nikita Smith fdad3f4f58 natvis for lib member ref 2025-09-05 15:19:30 -07:00
Nikita Smith 78b1f7e701 optionally emit import thunks 2025-09-05 15:19:30 -07:00
Nikita Smith 1aac27095e WIP: reorder input and library search order to match MSVC behavior 2025-09-05 15:19:30 -07:00
Nikita Smith 240935f0cc WIP: use MSVC rule for COMDAT symbol replacement 2025-09-05 15:19:30 -07:00
Nikita Smith d9eb26a830 infer subsystem when only entry point is specified 2025-09-05 15:19:30 -07:00
Nikita Smith b0db2b19f8 move entry point name redirection helper to MSCRT layer 2025-09-05 15:19:30 -07:00
Nikita Smith e1b7168605 update weak vs undefined replacement rule 2025-09-05 15:19:30 -07:00
Nikita Smith d7cdaa98b5 oops forgot to set enum type 2025-09-05 15:19:30 -07:00
Nikita Smith c397b1dfb1 handle common section case 2025-09-05 15:19:30 -07:00
Nikita Smith 843de72f64 add U8 atomic exchange for clang and gcc 2025-09-05 15:19:30 -07:00
Nikita Smith 0dac1a91db fix u128 make 2025-09-05 15:19:30 -07:00
Nikita Smith fc4e269211 ignore sign conversions in stb_sprintf.h 2025-09-05 15:19:30 -07:00
Nikita Smith daf69ff1c7 fix sign conversion in radsort.h 2025-09-05 15:19:30 -07:00
Nikita Smith 971f1b9a2f ignore sign conversions in blake3 2025-09-05 15:19:30 -07:00
Nikita Smith 1a9e17ee37 remove invalid normalize helpers for integer vectors (they always produce zero) 2025-09-05 15:19:30 -07:00
Nikita Smith e0c409e3f4 move prototype decl to base_core.h to fix implicit function usage 2025-09-05 15:19:30 -07:00
Nikita Smith 41fe8a7410 merge undefined and weak search passes 2025-09-05 15:19:30 -07:00
Nikita Smith b64e1dca9a WIP fix lib push order and sort new inputs 2025-09-05 15:19:30 -07:00
Nikita Smith 67e66dc26e WIP switching to serial library search-style, removed lib scope from
the symbol table
2025-09-05 15:19:30 -07:00
Nikita Smith 330c8ead38 move member queue-attempt flag from symbol to lib struct 2025-09-05 15:19:30 -07:00
Nikita Smith f1b22dbe27 change library to use compressed member offsets 2025-09-05 15:19:30 -07:00
Nikita Smith 89d496c855 fix replacement rule for weak search library vs undefined 2025-09-05 15:19:30 -07:00
Nikita Smith 0ceadff525 maintain input order of objs in PDB 2025-09-05 15:19:30 -07:00
Ryan Fleury 4eca7f7fea source file / source line map baking 2025-09-05 15:19:30 -07:00
Ryan Fleury efb24fb0fa checkpoint on src file / src line map baking 2025-09-05 15:19:30 -07:00
Ryan Fleury d2e6e5de5a oops - fix non-allocation in previous part 2025-09-05 15:19:30 -07:00
Ryan Fleury 15e9cda7d2 new location info baking, new constants baking 2025-09-05 15:19:30 -07:00
Ryan Fleury ee8dc27428 location data / location block baking 2025-09-05 15:19:30 -07:00
Ryan Fleury cd77ddb1b7 pdb converter - new location info building for all cases 2025-09-05 15:19:30 -07:00