Nikita Smith
|
5aff575feb
|
discard empty symbol nodes
|
2025-09-16 10:31:01 -07:00 |
|
Nikita Smith
|
b5a2bbaf54
|
early-out of default library searches
|
2025-09-16 10:31:01 -07:00 |
|
Nikita Smith
|
d6596efac8
|
allow weak symbols to resolve to other weak symbols
|
2025-09-16 10:31:01 -07:00 |
|
Nikita Smith
|
c47b35f635
|
update link symbol set logic to replace import address symbols with jump
thunk symbols
|
2025-09-16 10:31:01 -07:00 |
|
Nikita Smith
|
c7c86cd360
|
do not report unresolved symbols in debug info sections
|
2025-09-16 10:31:01 -07:00 |
|
Nikita Smith
|
b1609017c5
|
inline xxhash functions
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
98a05728b3
|
add check for whether weak symbol is resolved
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
24b427fe72
|
delete unused blake3 headers
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
ee3832ea3b
|
parallel for lib symbol search
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
fb46d0bba4
|
sort symbol names in first member header
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
7193986305
|
binary search for strings
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
00536f7ea8
|
rewrite set linked symbol logic to respect declaration order in obj symbol table
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
8a22910d9b
|
add "Links" log type for diagnosing linked lib members
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
8f749f4239
|
use global symbol table to detect duplicate imports
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
7cea036bc1
|
clean up pass over symbol table
- rename functions for consistency
- remove unused code
|
2025-09-08 16:07:31 -07:00 |
|
Nikita Smith
|
069d683690
|
fix crash when obj does not have debug info
|
2025-09-06 09:54:23 -07:00 |
|
Nikita Smith
|
a6432cce8e
|
improve unresolved symbol errors
- collect symbol references and print out objs that reference
unresolved symbol
- print source file location of the references
|
2025-09-06 09:54:23 -07:00 |
|
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
|
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
|
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
|
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
|
971f1b9a2f
|
ignore sign conversions in blake3
|
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 |
|
Nikita Smith
|
0656020ab3
|
sync primitive fixes
|
2025-08-18 19:26:35 -07:00 |
|
Nikita Smith
|
eee6a9c08a
|
natvis for obj list
|
2025-08-18 19:09:32 -07:00 |
|
Nikita Smith
|
b56ce72b7f
|
test cases for weak vs weak
|
2025-08-18 19:09:32 -07:00 |
|
Nikita Smith
|
257914da2f
|
handle alternate name directive after obj input
|
2025-08-18 19:09:32 -07:00 |
|
Nikita Smith
|
b19f73b93a
|
change unresolved weak symbol type to undefined
|
2025-08-18 19:09:32 -07:00 |
|