authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-10-08 07:55:44+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-10-16 22:25:20+02:00
log55fe86c57e5a069c0de56ff1ef2adfc80aa0ece7
tree4a4600b3924877f5081c2956489c0c59cf752785
parent140fb615a6a351fb397d6a538a4954a2229e90a8
signature Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.Target: Remove isBpfFreestanding().

The only use of this has nothing to do with the OS tag.

2 files changed, 1 insertions(+), 7 deletions(-)

lib/std/Target.zig-4
......@@ -1754,10 +1754,6 @@ pub inline fn isBSD(target: Target) bool {
17541754 return target.os.tag.isBSD();
17551755}
17561756
1757pub inline fn isBpfFreestanding(target: Target) bool {
1758 return target.cpu.arch.isBpf() and target.os.tag == .freestanding;
1759}
1760
17611757pub inline fn isGnuLibC(target: Target) bool {
17621758 return target.os.tag.isGnuLibC(target.abi);
17631759}
src/link/Elf.zig+1-3
......@@ -2045,9 +2045,7 @@ fn linkWithLLD(self: *Elf, arena: Allocator, tid: Zcu.PerThread.Id, prog_node: s
20452045 // copy when generating relocatables. Normally, we would expect `lld -r` to work.
20462046 // However, because LLD wants to resolve BPF relocations which it shouldn't, it fails
20472047 // before even generating the relocatable.
2048 if (output_mode == .Obj and
2049 (comp.config.lto or target.isBpfFreestanding()))
2050 {
2048 if (output_mode == .Obj and (comp.config.lto or target.cpu.arch.isBpf())) {
20512049 // In this case we must do a simple file copy
20522050 // here. TODO: think carefully about how we can avoid this redundant operation when doing
20532051 // build-obj. See also the corresponding TODO in linkAsArchive.