Jakub Konka
|
1f8dd27e40
|
elf: correctly format output .eh_frame when emitting relocatable
|
2023-11-09 14:46:28 +01:00 |
|
Jakub Konka
|
b1fcf0ed8f
|
elf: emit .rela.eh_frame section contents
|
2023-11-09 12:24:49 +01:00 |
|
Jakub Konka
|
0efc471122
|
elf: calculate required size for .rela.eh_frame
|
2023-11-09 12:02:20 +01:00 |
|
Jakub Konka
|
666ac6bf9b
|
elf: track .rela.eh_frame section and emit .eh_frame section symbol
|
2023-11-09 11:49:32 +01:00 |
|
Jakub Konka
|
0de5dd2ef1
|
elf: misc fixes
|
2023-11-09 10:32:39 +01:00 |
|
Jakub Konka
|
0299ed5036
|
elf: fix 32bit build
|
2023-11-08 18:45:43 +01:00 |
|
Jakub Konka
|
29d7727254
|
elf: emit SHN_COMMON symbols in -r mode
|
2023-11-08 18:15:41 +01:00 |
|
Jakub Konka
|
0b4d398c40
|
elf: streamline codepaths for different linker modes (object, ar, exe/dyn)
|
2023-11-08 17:35:56 +01:00 |
|
Jakub Konka
|
a16e6706b3
|
elf: LLVM emits relocs to undef local symbols - color me surprised!
|
2023-11-08 15:10:28 +01:00 |
|
Jakub Konka
|
d8b1ef9430
|
elf: adjust r_addend with offset of the original input section ref'd via STT_SECTION
|
2023-11-08 12:11:55 +01:00 |
|
Jakub Konka
|
ae08f9bfe9
|
elf: claim unresolved dangling symbols as undef externs in -r mode
|
2023-11-08 11:51:11 +01:00 |
|
Jakub Konka
|
e87c751558
|
elf: reference .rela sections via output section index
|
2023-11-08 10:57:34 +01:00 |
|
Jakub Konka
|
5e78600f0f
|
elf: actually track output symtab index of symbols
|
2023-11-07 23:18:41 +01:00 |
|
Jakub Konka
|
ecf6ed7d9b
|
elf: allocate alloc sections when emitting relocatable
|
2023-11-07 15:04:57 +01:00 |
|
Jakub Konka
|
31b280c78f
|
elf: emit .rela.eh_frame section header if required
|
2023-11-07 14:47:11 +01:00 |
|
Jakub Konka
|
0211d6bf4f
|
elf: create link between .rela and output section
|
2023-11-07 14:42:27 +01:00 |
|
Jakub Konka
|
e22b3595c1
|
elf: update .rela section sizes
|
2023-11-07 14:29:44 +01:00 |
|
Jakub Konka
|
c7ed7c4690
|
elf: generate section symbols when writing symtab
|
2023-11-07 13:31:31 +01:00 |
|
Jakub Konka
|
3df53d1722
|
elf: create skeleton of required changes for supporting -r mode
|
2023-11-07 11:19:55 +01:00 |
|
Jakub Konka
|
bf0387b6bb
|
Merge pull request #17873 from ziglang/elf-archive
elf: implement archiving input object files
|
2023-11-07 03:22:14 +01:00 |
|
Jakub Konka
|
261db02018
|
CheckObject: support parsing and dumping archive symtab for ELF
|
2023-11-06 21:18:26 +01:00 |
|
Jakub Konka
|
1b69b0c621
|
elf: clearly separate updating and writing symtab from only ZigObject
|
2023-11-06 14:26:35 +01:00 |
|
Jakub Konka
|
281dabaa88
|
Compilation: unconditionally close open file handles for writable dance
|
2023-11-06 13:47:39 +01:00 |
|
Andrew Kelley
|
1b0b46a8a9
|
Merge pull request #17871 from jacobly0/x86_64
x86_64: get a compiler compiled with the x86_64 backend passing x86_64 backend tests
|
2023-11-05 18:45:21 -05:00 |
|
Andrew Kelley
|
702b809ea3
|
Merge pull request #17815 from Luukdegram/wasm-no-entry
wasm-linker: implement `-fno-entry` and correctly pass `--shared` and `--pie` when given
|
2023-11-05 18:44:12 -05:00 |
|
Jacob Young
|
c2cda947c9
|
src: fix memory leaks
|
2023-11-05 11:54:29 -05:00 |
|
Jakub Konka
|
8142925c7e
|
elf: hook up saving object files in an archive
|
2023-11-05 13:37:13 +01:00 |
|
Jakub Konka
|
55fa8a04f1
|
elf: add hooks for archiving Objects
|
2023-11-05 12:56:17 +01:00 |
|
Jakub Konka
|
5c48236103
|
elf: init objects after parsing them
|
2023-11-05 12:37:15 +01:00 |
|
Jakub Konka
|
8d7ec05070
|
elf: actually save correct object names in the archive
|
2023-11-05 12:08:15 +01:00 |
|
Jakub Konka
|
f24ceec35a
|
Merge pull request #17844 from ziglang/elf-object
elf: handle emitting relocatables and static libraries - humble beginnings
|
2023-11-04 20:58:15 +01:00 |
|
Jakub Konka
|
533c88158e
|
elf: actually capture positionals when linking static library
|
2023-11-04 09:14:15 +01:00 |
|
Jakub Konka
|
bd0416aeb6
|
elf: flag errors on hitting unimplemented codepaths
|
2023-11-04 09:14:05 +01:00 |
|
Jakub Konka
|
9cf3ebe524
|
elf: fix more int resolution issues
|
2023-11-04 09:13:50 +01:00 |
|
Jakub Konka
|
56296694d9
|
elf: fix 32bit build
|
2023-11-04 09:13:43 +01:00 |
|
Jakub Konka
|
e3b82eaa66
|
elf: do not store filename in strtab unless longer than 15 chars
|
2023-11-04 09:13:26 +01:00 |
|
Jakub Konka
|
acd700ac6b
|
elf: store ar state per input object file
|
2023-11-04 09:13:18 +01:00 |
|
Jakub Konka
|
ed2984f335
|
elf: do not align end of archive to 2bytes; fix archive parser
|
2023-11-04 09:13:07 +01:00 |
|
Jakub Konka
|
65adbec918
|
link: commit missing source StringTable.zig
|
2023-11-04 09:12:46 +01:00 |
|
Jakub Konka
|
33a0a72e87
|
elf: align ar_hdr to at least 2 bytes
|
2023-11-04 09:12:26 +01:00 |
|
Jakub Konka
|
875beb25b5
|
elf: fix writing symtab to an archive
|
2023-11-04 09:12:18 +01:00 |
|
Jakub Konka
|
3b9455f005
|
elf: generate pretty rudimentary archive
|
2023-11-04 09:12:07 +01:00 |
|
Jakub Konka
|
eddf9cc65b
|
elf: collect exports from ZigObject into AR symtab
|
2023-11-04 09:11:58 +01:00 |
|
Jakub Konka
|
481ee1b598
|
elf: enable static-lib flush path
|
2023-11-04 09:11:47 +01:00 |
|
Jakub Konka
|
ccb2afacc0
|
elf: postpone creation of .got.zig entry until code emit
|
2023-11-04 09:11:29 +01:00 |
|
Jakub Konka
|
5affd29b47
|
elf: use StringTable for strtab management in ZigObject
|
2023-11-04 09:11:22 +01:00 |
|
Jakub Konka
|
96f221236d
|
elf: fix r_offset when emitting relocs for the linker
|
2023-11-04 09:11:14 +01:00 |
|
Jakub Konka
|
7c5c59191e
|
elf: claim unresolved dangling symbols as undef externs when emitting object
|
2023-11-04 09:10:43 +01:00 |
|
Jakub Konka
|
dbe13200f1
|
elf: emit STT_SECTION symbols
|
2023-11-04 09:10:30 +01:00 |
|
Jakub Konka
|
8055f68765
|
elf: make sure we never emit .got.zig relocs when linking object files
|
2023-11-04 09:10:23 +01:00 |
|