authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-02-01 14:26:12+01:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-04-25 21:49:38+02:00
log48d5b66677098638f75547f0763a994d28bb0ce8
tree798b86ccf3f4a28c08f4f9d419ec04bc8041bb3c
parent8a1ec6a54db585b5730c4a89dd1db407ba74a304
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.Target: fuchsia supports arm/thumb now


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

lib/std/Target.zig+8-1
......@@ -845,6 +845,12 @@ pub const Abi = enum {
845845 => .eabi,
846846 else => .none,
847847 },
848 .fuchsia => switch (arch) {
849 .arm,
850 .thumb,
851 => .eabihf,
852 else => .none,
853 },
848854 .haiku => switch (arch) {
849855 .arm,
850856 .powerpc,
......@@ -928,7 +934,6 @@ pub const Abi = enum {
928934 .wasi, .emscripten => .musl,
929935
930936 .contiki,
931 .fuchsia,
932937 .hermit,
933938 .illumos,
934939 .managarm,
......@@ -2443,8 +2448,10 @@ pub const DynamicLinker = struct {
24432448 pub fn standard(cpu: Cpu, os: Os, abi: Abi) DynamicLinker {
24442449 return switch (os.tag) {
24452450 .fuchsia => switch (cpu.arch) {
2451 .arm,
24462452 .aarch64,
24472453 .riscv64,
2454 .thumb,
24482455 .x86_64,
24492456 => init("ld.so.1"), // Fuchsia is unusual in that `DT_INTERP` is just a basename.
24502457 else => none,
test/llvm_targets.zig+2
......@@ -52,6 +52,7 @@ const targets = [_]std.Target.Query{
5252 .{ .cpu_arch = .arm, .os_tag = .freebsd, .abi = .eabihf },
5353 .{ .cpu_arch = .arm, .os_tag = .freestanding, .abi = .eabi },
5454 .{ .cpu_arch = .arm, .os_tag = .freestanding, .abi = .eabihf },
55 .{ .cpu_arch = .arm, .os_tag = .fuchsia, .abi = .eabihf },
5556 .{ .cpu_arch = .arm, .os_tag = .haiku, .abi = .eabi },
5657 .{ .cpu_arch = .arm, .os_tag = .haiku, .abi = .eabihf },
5758 .{ .cpu_arch = .arm, .os_tag = .linux, .abi = .androideabi },
......@@ -255,6 +256,7 @@ const targets = [_]std.Target.Query{
255256
256257 .{ .cpu_arch = .thumb, .os_tag = .freestanding, .abi = .eabi },
257258 .{ .cpu_arch = .thumb, .os_tag = .freestanding, .abi = .eabihf },
259 .{ .cpu_arch = .thumb, .os_tag = .fuchsia, .abi = .eabihf },
258260 .{ .cpu_arch = .thumb, .os_tag = .linux, .abi = .eabi },
259261 .{ .cpu_arch = .thumb, .os_tag = .linux, .abi = .eabihf },
260262 .{ .cpu_arch = .thumb, .os_tag = .linux, .abi = .musleabi },