26422 Commits

Author SHA1 Message Date
Jakub Konka
5ff12003ee elf: dynamically allocate SHDR table 2023-10-16 19:33:05 +02:00
Jakub Konka
1939c7d182 elf: clean up logic for allocating TLS segment 2023-10-16 19:33:05 +02:00
Jakub Konka
c87e73b19f elf: allocate non-alloc sections using incremental mechanism 2023-10-16 19:33:05 +02:00
Jakub Konka
2aa6099ad9 elf: assume only one TLS segment for now 2023-10-16 19:33:05 +02:00
Jakub Konka
8be71906d9 elf: split allocating sections/segments into alloc and non-alloc 2023-10-16 19:33:05 +02:00
Jakub Konka
bcce035636 elf: bring back PT_LOAD for PT_PHDR for incremental codepath 2023-10-16 19:33:05 +02:00
Jakub Konka
43397bbdc4 elf: always write SHDR table, at least for now 2023-10-16 19:33:05 +02:00
Jakub Konka
6a7a20520d elf: always write PHDR table, at least for now 2023-10-16 19:33:05 +02:00
Jakub Konka
5148e38751 elf: create and allocate special PHDRs out of the loop 2023-10-16 19:33:05 +02:00
Jakub Konka
59fcf16732 elf: move creation of PT_PHDR out of initPhdrs and initMetadata 2023-10-16 19:33:05 +02:00
Jakub Konka
e571208433 elf: rename Zig-specific section handles to _zig_ infixed 2023-10-16 19:33:05 +02:00
Jakub Konka
871591ca1c elf: fix conflicts after rebase gone bad 2023-10-16 19:33:05 +02:00
Jakub Konka
b3f40c35dc elf: fix testTlsOffsetAlignment test 2023-10-16 19:33:05 +02:00
Jakub Konka
67a02bee2c elf: port more linker tests 2023-10-16 19:33:05 +02:00
Jakub Konka
81b68c7465 elf: port more linker tests 2023-10-16 19:33:05 +02:00
Jakub Konka
0b37a9c78d elf: fix GotSection.write in presence of TLSLD symbol 2023-10-16 19:33:05 +02:00
Jakub Konka
898c87bd2a elf: port more linker tests 2023-10-16 19:33:05 +02:00
Jakub Konka
1fe0fd69e0 elf: port more linker tests 2023-10-16 19:33:05 +02:00
Jakub Konka
9487007ffe elf: port more linker tests 2023-10-16 19:33:05 +02:00
Jakub Konka
1efc0519ce elf: make init/fini sorting deterministic 2023-10-16 19:33:05 +02:00
Jakub Konka
44f3085851 elf: refactor tests and disable currently impossible combinations 2023-10-16 19:33:05 +02:00
Jakub Konka
df656c4eef elf: test exporting symbols in exes 2023-10-16 19:33:05 +02:00
Jakub Konka
f2ad71991a elf: test --export-dynamic flag 2023-10-16 19:33:05 +02:00
Jakub Konka
20980b33e3 elf: test entry point 2023-10-16 19:33:05 +02:00
Jakub Konka
9861a9ea75 elf: test various copyrel edge cases 2023-10-16 19:33:05 +02:00
Jakub Konka
b6006df565 elf: refactor canonical PLT test 2023-10-16 19:33:05 +02:00
Jakub Konka
1772dbb503 elf: fix generating .plt.got indirection 2023-10-16 19:33:05 +02:00
Jakub Konka
06f3b385c4 elf: fix alignment of .eh_frame_hdr section 2023-10-16 19:33:05 +02:00
Jakub Konka
a748ca3725 elf: populate symtab with symbols coming from DSOs 2023-10-16 19:33:05 +02:00
Jakub Konka
c940735c4d elf: port more linker tests 2023-10-16 19:33:05 +02:00
Jakub Konka
149dd82d54 elf: add --as-needed test 2023-10-16 19:33:05 +02:00
Jakub Konka
7ff9461b88 elf: test large alignment of funcs in exe 2023-10-16 19:33:05 +02:00
Jakub Konka
11bdfe1179 elf: test large alignment of funcs in DSO 2023-10-16 19:33:04 +02:00
Jakub Konka
031e12b963 elf: override default dynamic linker path with system\`s dl when appropriate 2023-10-16 19:33:04 +02:00
Jakub Konka
62c6c4a46d elf: more DSO tests 2023-10-16 19:33:04 +02:00
Jakub Konka
2f497f9f05 elf: emit .got.plt when emitting .plt 2023-10-16 19:33:04 +02:00
Jakub Konka
e53fa93170 elf: test basic DSO generation and linking 2023-10-16 19:33:04 +02:00
Jakub Konka
ac03a35e82 elf: test common symbols in archives 2023-10-16 19:33:04 +02:00
Jakub Konka
cf2c8c0789 elf: test common symbols handling 2023-10-16 19:33:04 +02:00
Jakub Konka
def7190e84 elf: hook up common symbols handler 2023-10-16 19:33:04 +02:00
Jakub Konka
f4c1b1d9ad elf: implement --verbose-link, and other fixes 2023-10-16 19:33:04 +02:00
Jakub Konka
4af5caa81f elf: add missing generators for special dynamic sections 2023-10-16 19:33:04 +02:00
Jakub Konka
5fa90afb64 elf: fix synthetic section handling and actually parse DSOs 2023-10-16 19:33:04 +02:00
Jakub Konka
d1446565a1 elf: re-enable dynamic linking codepaths 2023-10-16 19:33:04 +02:00
Jakub Konka
04a8f217c6 elf: fix COMDAT deduping logic 2023-10-16 19:33:04 +02:00
Jakub Konka
9a80ac0429 elf: add garbage collection of sections 2023-10-16 19:33:04 +02:00
Jakub Konka
2ee221328f elf: test garbage collection of sections 2023-10-16 19:33:04 +02:00
Jakub Konka
f1b9c365f2 elf: add incomplete handling of build-obj -fllvm -fno-lld 2023-10-16 19:33:04 +02:00
Jakub Konka
976d4f51cc elf: add hello-world c++ link test 2023-10-16 19:33:04 +02:00
Jakub Konka
621ddc003a elf: temporarily disable non-llvm linker tests 2023-10-16 19:33:04 +02:00