mirror of
https://codeberg.org/ziglang/zig.git
synced 2026-04-27 19:09:47 +03:00
9f2f6aaef5
glibc has never officially supported ELFv2 on big-endian PowerPC, and we do not (and likely never will) support linking ELFv1. So just drop this target instead of pretending we actually have anything resembling usable support for it. This is a dying target anyway; IBM have been pushing people to powerpc64le for years now, and most distros have dropped big endian. glibc headers and abilists are not updated as part of this; I'll just let that happen automatically on the next glibc update. Size savings are expected to be very minimal anyway since there's large overlap between powerpc64 and powerpc64le. This commit also fixes a couple of bad assumptions in std.Target: * The dynamic linker path should be /lib64/ld64.so.1. We should get this right even if the Zig compiler doesn't support the target. * cCallingConvention() was picking powerpc64_elf_v2 only for musl targets. In reality, for the targets we support in std.Target, it should pick v2 for all except powerpc64-linux-gnu. Finally, this switches LLVM codegen to use ELFv2 data layout for all targets except ps3.