 Nikita SmithandRyan Fleury
|
80967fac12
|
pre-parse section names and flag debug info sections
|
2025-09-16 10:31:02 -07:00 |
|
 Nikita SmithandRyan Fleury
|
3224c5e0aa
|
skip linker info sections during relocation patching, also log a message
when encountering an unsupported machine type
|
2025-09-16 10:31:01 -07:00 |
|
 Nikita SmithandRyan Fleury
|
7095a8cd6e
|
fix bug where new object tracking failed, causing certain objs to be
skipped during the symbol table input step
|
2025-09-16 10:31:01 -07:00 |
|
 Nikita SmithandRyan Fleury
|
7cea036bc1
|
clean up pass over symbol table
- rename functions for consistency
- remove unused code
|
2025-09-08 16:07:31 -07:00 |
|
 Nikita SmithandRyan Fleury
|
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 SmithandRyan Fleury
|
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 SmithandRyan Fleury
|
6a3d7e65f3
|
remove year from the copyright
|
2025-09-05 15:19:31 -07:00 |
|
 Nikita SmithandRyan Fleury
|
580303b0dd
|
emit jump thunks for imports only when needed
|
2025-09-05 15:19:30 -07:00 |
|
 Nikita SmithandRyan Fleury
|
1aac27095e
|
WIP: reorder input and library search order to match MSVC behavior
|
2025-09-05 15:19:30 -07:00 |
|
 Nikita SmithandRyan Fleury
|
67e66dc26e
|
WIP switching to serial library search-style, removed lib scope from
the symbol table
|
2025-09-05 15:19:30 -07:00 |
|
 Nikita SmithandNikita Smith
|
81381f9a6d
|
minor cleanups
|
2025-08-18 19:09:31 -07:00 |
|
Nikita Smith
|
829a35430c
|
add flag to exclude objs from debug info input
|
2025-08-11 02:49:26 -07:00 |
|
Nikita Smith
|
702fd74b23
|
minor cleanup in obj initer
|
2025-08-10 21:41:39 -07:00 |
|
Nikita Smith
|
7466da1479
|
mark referenced symbols as live for unresolved-symbol detection
|
2025-08-08 15:54:21 -07:00 |
|
Nikita Smith
|
9a1f96bda2
|
progress on /opt:ref
Link the debugger and strip unreferenced sections
TODO: Mark referenced undefined symbols for unresolved symbol reporting
|
2025-08-07 17:36:11 -07:00 |
|
 Nikita SmithandRyan Fleury
|
dd715dacf7
|
assign COMDAT symlinks as soon as the symbol table is processed
|
2025-08-05 08:39:11 -07:00 |
|
Nikita Smith
|
18f83521e4
|
clean up pass over directives handler; preparing to collapse code paths
|
2025-07-28 20:07:56 -07:00 |
|
Nikita Smith
|
7be9df0e90
|
move directive section gather logic to obj layer
|
2025-07-28 20:07:56 -07:00 |
|
Nikita Smith
|
b3efce4b9a
|
better place for this helper function
|
2025-07-28 20:07:56 -07:00 |
|
Nikita Smith
|
1e1d903878
|
store library pointer in the obj instead of path; required for prioritized symbol lookup implementation
|
2025-07-28 20:07:56 -07:00 |
|
 Nikita SmithandRyan Fleury
|
17d35cd327
|
add garbage collector for COMDAT sections
|
2025-07-23 16:09:48 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a6b2cf64ba
|
WIP collect sections associations
|
2025-07-23 16:09:48 -07:00 |
|
 Nikita SmithandRyan Fleury
|
d32667546d
|
factor out weak symbol resolution logic and apply it to the symbol table
when building link context
|
2025-07-23 16:09:48 -07:00 |
|
 Nikita SmithandRyan Fleury
|
7cd5a670e3
|
WIP factoring out symbol table fixups
|
2025-07-23 16:09:48 -07:00 |
|
 Nikita SmithandRyan Fleury
|
fcb06579a4
|
collapse symbol scope and symbol type enums
|
2025-06-25 10:53:25 -07:00 |
|
 Nikita SmithandRyan Fleury
|
b19be0574c
|
function pad min - final pass over
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
bbb825adf4
|
extract hotpatch flag from compile symbol
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a5119e3b51
|
WIP function pad min
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
3fb5e21d73
|
profiler markup
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
439fd0324d
|
typos
|
2025-06-25 10:53:24 -07:00 |
|
 Nikita SmithandRyan Fleury
|
89e2ea15ad
|
add /RAD_REMOVE_SECTION switch and special case debug sections
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
dcc4f38709
|
clean up pass over obj file
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
37689b2e4a
|
section collector
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
fb0e8d7579
|
fix crash on COMDAT folding communal variable
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
bf25b5b249
|
handle COMDAT Associative selection
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
4aa6e6d132
|
store symbol links for COMDAT
|
2025-06-25 10:53:23 -07:00 |
|
 Nikita SmithandRyan Fleury
|
90797f363f
|
fix for machine compatibility check
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
73fe9d223a
|
handle /ALTERNATENAME directive
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
a2bef106a1
|
handle case where symbol doesn't have obj
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
8da56025b3
|
patch section symbol and test for relocations to discarded memory
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
7c071e7238
|
linker checkpoint
|
2025-06-25 10:53:22 -07:00 |
|
 Nikita SmithandRyan Fleury
|
19a7ada1dc
|
make export table with COFF obj writer,
partially converted import table to COFF obj writer
|
2025-06-25 10:53:21 -07:00 |
|
 Nikita SmithandRyan Fleury
|
3a2bb318c7
|
make import lib objs with COFF obj writer
|
2025-06-25 10:53:21 -07:00 |
|
 Nikita SmithandRyan Fleury
|
55c76db902
|
handle linker directives in a separate step after obj is initialized,
this way we don't need to store directives in obj struct
|
2025-06-25 10:53:21 -07:00 |
|
 Nikita SmithandRyan Fleury
|
307d3a7f4b
|
check obj compatibility before initializing them
|
2025-06-25 10:53:21 -07:00 |
|
 Nikita SmithandRyan Fleury
|
1eca5818a6
|
removed dependency on relocation list when error checking .drectve
|
2025-06-25 10:53:21 -07:00 |
|
Nikita Smith
|
ab05133f8a
|
picked better name convention for the section table
|
2025-04-04 15:47:56 -07:00 |
|
Nikita Smith
|
8beb168905
|
went over COFF string table and changed the parser code accept to String8
|
2025-04-04 15:45:51 -07:00 |
|
Nikita Smith
|
c090bee2f3
|
added missing debug comments for chunks
|
2025-04-04 15:45:51 -07:00 |
|
Nikita Smith
|
c6ba475427
|
produce image layout map
|
2025-04-04 15:45:51 -07:00 |
|