Alex Rønne Petersen
|
27c72c555a
|
glibc: Fix an edge case leading to duplicate stub symbols.
Closes #20376.
Closes #21076.
|
2024-09-05 06:16:26 +02:00 |
|
Alex Rønne Petersen
|
1773a88ab1
|
glibc: Set asm and include paths for csky.
|
2024-09-05 06:16:26 +02:00 |
|
Alex Rønne Petersen
|
4b4fce3e89
|
glibc: Set asm and include paths for arc.
|
2024-09-05 06:16:26 +02:00 |
|
Alex Rønne Petersen
|
747460025e
|
glibc: Add csky start files.
|
2024-09-05 06:16:26 +02:00 |
|
Alex Rønne Petersen
|
06945d5eb7
|
glibc: Add arc start files.
|
2024-09-05 06:16:26 +02:00 |
|
Alex Rønne Petersen
|
9eb66ab3fb
|
glibc: Set asm and include paths for m68k.
|
2024-09-05 06:16:26 +02:00 |
|
Alex Rønne Petersen
|
0bbfa199e9
|
glibc: Add include path for gnux32.
|
2024-09-05 06:16:26 +02:00 |
|
Alex Rønne Petersen
|
e492e7232f
|
glibc: Set asm and include paths for s390x.
|
2024-09-05 06:16:25 +02:00 |
|
Alex Rønne Petersen
|
c852992c7e
|
glibc: Also pass -Wno-unsupported-floating-point-opt when building libc_nonshared.a.
Apparently 3fb6e46f6e4231b9569193a15a4357a2ae11fb0f wasn't enough.
|
2024-09-05 06:16:25 +02:00 |
|
Andrew Kelley
|
3929cac154
|
Merge pull request #21257 from mlugg/computed-goto-3
compiler: implement labeled switch/continue
|
2024-09-04 18:31:28 -07:00 |
|
Alex Rønne Petersen
|
ee3efe8007
|
test: Add powerpc64-linux-(none,musl) triples to module tests.
|
2024-09-05 01:15:33 +02:00 |
|
Alex Rønne Petersen
|
40ee682517
|
test: Disable store vector with memset on powerpc64.
This will be re-enabled with LLVM 19.
|
2024-09-05 01:15:33 +02:00 |
|
Alex Rønne Petersen
|
2a6eecff3e
|
test: Disable reinterpret packed union for powerpc64 too.
https://github.com/ziglang/zig/issues/21050
|
2024-09-05 01:15:33 +02:00 |
|
Alex Rønne Petersen
|
19895834b9
|
compiler: Force ELFv2 for powerpc64.
LLD does not support ELFv1. By forcing ELFv2, we can at least build working
binaries for triples like `powerpc64-linux-none`.
|
2024-09-05 01:15:33 +02:00 |
|
Jakub Konka
|
7e31804870
|
Merge pull request #21305 from ziglang/elf-incr
elf: redo how we allocate atoms extracted from input relocatable object files
|
2024-09-04 21:56:45 +02:00 |
|
Jakub Konka
|
e1d5bb365b
|
elf: fix 32bit build
|
2024-09-04 15:55:38 +02:00 |
|
Jakub Konka
|
516955dbdb
|
elf: add AtomList.zig to CMakeLists.txt
|
2024-09-04 13:45:16 +02:00 |
|
Jakub Konka
|
b6caab63cb
|
elf: actually commit AtomList.zig
|
2024-09-04 13:44:06 +02:00 |
|
Jakub Konka
|
f3d527c082
|
elf: migrate thunks to the new mechanism (AtomList)
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
d302a1068e
|
elf: rename SectionChunk into AtomList and store as part of Section
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
64ad6eff16
|
elf: create back/forward links for atoms within section chunks
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
6ec8b15918
|
elf: fix emitting static lib when ZigObject is present
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
8c76a61ef5
|
test/link/elf: test --gc-sections on Zig input with LLVM too
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
801f038c2c
|
elf: do not pad placeholders coming from input object files
This is currently not entirely accurate since no padding will affect
the last-most atom of ZigObject that should be padded.
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
eeec50d251
|
elf: misc .eh_frame management fixes
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
fca92fd7c0
|
elf: copy existing data when allocating other alloc sections in relocatable mode
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
5cdad186fe
|
elf: do not create .eh_frame section if ZigObject already did so in relocatable mode
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
88e0d49feb
|
elf: init rela sections in a separate pass for ZigObject
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
2ef3e30e2d
|
elf: emit relocs for self-hosted generated .eh_frame section
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
5cb51c10de
|
elf: fix relocatable mode
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
6b53dc9461
|
elf: actually allocate atoms within each section chunk
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
6a50a0f0ed
|
elf: update osec index for section chunks in objects
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
f87a7251a3
|
elf: actually write allocated atoms in object files
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
874ef6308e
|
elf: do not create .eh_frame section if ZigObject already did so
|
2024-09-04 13:34:26 +02:00 |
|
Jakub Konka
|
45e46f0fb9
|
elf: allocate atom chunks using allocateChunk mechanics in objects
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
1ef96f05eb
|
elf: introduce SectionChunk - a container of atoms per object file
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
6ec5df3898
|
elf: allocate .tdata and .tbss using allocateAtom mechanics
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
3e100c5dab
|
dwarf: make Section.off a function
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
da60159d85
|
elf+dwarf: refer sections via section symbols
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
acb91f4b30
|
elf: fix emitting correct .rela. sections in -r mode
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
25fa092bb1
|
elf: fix a typo in setting ZigObject.data_relro_index
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
bc39bddd5f
|
elf: remove isDebugSection helper
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
ef6ee90ff8
|
elf: remove now unused number_of_zig_segments
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
2d0f4fc9c0
|
elf: allocate .text in ZigObject similarly to .eh_frame
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
848535535d
|
elf: allocate .data.rel.ro and .rodata in ZigObject similarly to .eh_frame
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
0b92404ddf
|
elf: allocate .data in ZigObject similarly to .eh_frame
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
37a1f0e7f2
|
elf: allocate .bss in ZigObject similarly to .eh_frame
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
8f1ce3c85b
|
elf: shuffle some stages to make it clear what needs what
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
d32af9ea2a
|
elf: move initOutputSection into Elf from Object
|
2024-09-04 13:34:25 +02:00 |
|
Jakub Konka
|
b44dd599ad
|
elf: split Atom.allocate into Atom-independent parts
|
2024-09-04 13:34:25 +02:00 |
|