Commit Graph

368 Commits

Author SHA1 Message Date
Jakub Konka 8087ec8e8c elf: improve parsing of ld scripts and actually test linking against them 2023-10-24 19:03:00 +02:00
Jakub Konka b8ff989fa0 elf: force pie in tests affected by QEMU bug 2023-10-19 19:46:23 +02:00
Jakub Konka 1bbe521074 elf: fix flaky link tests 2023-10-19 03:34:47 +02:00
Andrew Kelley aeadcb3918 disable flaky linker test
tracked by #17576
2023-10-17 21:46:13 -07:00
Andrew Kelley 25400fadf8 disable two flaky link tests
Tracking issue #17576
2023-10-17 16:00:14 -07:00
Jakub Konka 666e9df170 elf: ensure we build with -fPIE when testing init array order 2023-10-17 11:30:56 +02:00
Jakub Konka 77443ac2b5 elf: skip tests on foreign architectures 2023-10-16 21:45:28 +02:00
Jakub Konka 5423778f6f elf: add self-hosted tests 2023-10-16 19:33:06 +02:00
Jakub Konka 716a45a209 elf: use findFreeSpace mechanics to allocate object-extracted segments 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 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 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 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 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 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
Andrew Kelley 5722261e64 Merge pull request #17465
Compilation: default to self-hosted backends when not using libllvm
2023-10-11 00:53:07 -07:00
Krzysztof Wolicki 7abf9b3a83 Step.Compile: add options struct for addCSourceFiles (#17420)
Closes #17410
2023-10-10 14:29:26 -04:00
Jakub Konka 33ef01d16b macho: test for presence of _abc as export in 16308 test 2023-10-10 11:17:29 -07:00
Jakub Konka 89c2151a97 elf: move logic for extracing atom's code into input files 2023-09-28 18:35:26 +02:00
Jakub Konka 91f2e66bf9 elf: test TLS in static programs 2023-09-28 15:13:35 +02:00
Jakub Konka 7617486f1d elf: skip running exe on foreign hosts 2023-09-26 21:07:47 +02:00
Jakub Konka b01b972999 elf: test linking against empty C object 2023-09-26 21:07:47 +02:00
Jakub Konka 5e617e4b0c elf: put libc on the linker line if requested 2023-09-26 21:07:47 +02:00
Jakub Konka 8abfb3559a elf: test statically linking libc 2023-09-26 21:07:47 +02:00
Jakub Konka aac04b4a5a elf: port some of zld's test harness 2023-09-26 21:07:47 +02:00
Jakub Konka 3b2b9fcbc5 darwin: move inference of SDK version into the linker
`std.zig.system.darwin.getSdk` now pulls only the SDK path
so we execute a child process only once and not twice as it was
until now since we parse the SDK version directly from the pulled path.
This is actually how `ld64` does it too.
2023-08-29 06:43:41 +02:00
Jakub Konka 573bb77ab6 macho: add smoke test for re-exports in static libs 2023-08-16 12:19:34 +02:00
Andrew Kelley e582a3642b std.zig.system.darwin: fix redundant names 2023-08-03 09:52:15 -07:00
Andrew Kelley aef8bcf776 std.Build.Step.Compile: fine-grained system lib search control
For each library you can specify the preferred mode and search strategy.

The old way of setting global state is eliminated.
2023-08-03 09:52:15 -07:00
Jakub Konka 16f09127b5 link-test: add matching test case for unwind info when MH_SUBSECTIONS_VIA_SYMBOLS is not set 2023-08-02 22:12:26 +02:00