Commit 0a5c088ecc
Changed files (2)
lib
std
zig
src
lib/std/zig/target.zig
@@ -34,6 +34,7 @@ pub const available_libcs = [_]ArchOsAbi{
.{ .arch = .aarch64_be, .os = .linux, .abi = .musl, .os_ver = .{ .major = 3, .minor = 13, .patch = 0 } },
.{ .arch = .csky, .os = .linux, .abi = .gnueabi, .os_ver = .{ .major = 4, .minor = 20, .patch = 0 }, .glibc_min = .{ .major = 2, .minor = 29, .patch = 0 }, .glibc_triple = "csky-linux-gnuabiv2-soft" },
.{ .arch = .csky, .os = .linux, .abi = .gnueabihf, .os_ver = .{ .major = 4, .minor = 20, .patch = 0 }, .glibc_min = .{ .major = 2, .minor = 29, .patch = 0 }, .glibc_triple = "csky-linux-gnuabiv2" },
+ .{ .arch = .hexagon, .os = .linux, .abi = .musl, .os_ver = .{ .major = 3, .minor = 2, .patch = 102 } },
.{ .arch = .loongarch64, .os = .linux, .abi = .gnu, .os_ver = .{ .major = 5, .minor = 19, .patch = 0 }, .glibc_min = .{ .major = 2, .minor = 36, .patch = 0 }, .glibc_triple = "loongarch64-linux-gnu-lp64d" },
.{ .arch = .loongarch64, .os = .linux, .abi = .gnusf, .os_ver = .{ .major = 5, .minor = 19, .patch = 0 }, .glibc_min = .{ .major = 2, .minor = 36, .patch = 0 }, .glibc_triple = "loongarch64-linux-gnu-lp64s" },
.{ .arch = .loongarch64, .os = .linux, .abi = .musl, .os_ver = .{ .major = 5, .minor = 19, .patch = 0 } },
@@ -154,6 +155,7 @@ pub fn muslArchName(arch: std.Target.Cpu.Arch, abi: std.Target.Abi) [:0]const u8
else => switch (arch) {
.arm, .armeb, .thumb, .thumbeb => "arm",
.aarch64, .aarch64_be => "aarch64",
+ .hexagon => "hexagon",
.loongarch64 => "loongarch64",
.m68k => "m68k",
.mips, .mipsel => "mips",
src/musl.zig
@@ -202,6 +202,7 @@ pub fn buildCrtFile(comp: *Compilation, in_crt_file: CrtFile, prog_node: std.Pro
const family_define = switch (target.cpu.arch) {
.arm, .armeb, .thumb, .thumbeb => "-DFAMILY_arm",
.aarch64, .aarch64_be => "-DFAMILY_aarch64",
+ .hexagon => "-DFAMILY_hexagon",
.loongarch64 => "-DFAMILY_loongarch",
.m68k => "-DFAMILY_m68k",
.mips, .mipsel, .mips64, .mips64el => "-DFAMILY_mips",
@@ -320,6 +321,7 @@ fn isArchName(name: []const u8) bool {
"aarch64",
"arm",
"generic",
+ "hexagon",
"i386",
"loongarch64",
"m68k",
@@ -619,6 +621,7 @@ const src_files = [_][]const u8{
"musl/src/fenv/fesetround.c",
"musl/src/fenv/feupdateenv.c",
"musl/src/fenv/__flt_rounds.c",
+ "musl/src/fenv/hexagon/fenv.S",
"musl/src/fenv/i386/fenv.s",
"musl/src/fenv/loongarch64/fenv.S",
"musl/src/fenv/m68k/fenv.c",
@@ -1577,6 +1580,8 @@ const src_files = [_][]const u8{
"musl/src/setjmp/aarch64/setjmp.s",
"musl/src/setjmp/arm/longjmp.S",
"musl/src/setjmp/arm/setjmp.S",
+ "musl/src/setjmp/hexagon/longjmp.s",
+ "musl/src/setjmp/hexagon/setjmp.s",
"musl/src/setjmp/i386/longjmp.s",
"musl/src/setjmp/i386/setjmp.s",
"musl/src/setjmp/longjmp.c",
@@ -1611,6 +1616,8 @@ const src_files = [_][]const u8{
"musl/src/signal/arm/sigsetjmp.s",
"musl/src/signal/block.c",
"musl/src/signal/getitimer.c",
+ "musl/src/signal/hexagon/restore.s",
+ "musl/src/signal/hexagon/sigsetjmp.s",
"musl/src/signal/i386/restore.s",
"musl/src/signal/i386/sigsetjmp.s",
"musl/src/signal/kill.c",
@@ -1943,6 +1950,10 @@ const src_files = [_][]const u8{
"musl/src/thread/cnd_timedwait.c",
"musl/src/thread/cnd_wait.c",
"musl/src/thread/default_attr.c",
+ "musl/src/thread/hexagon/clone.s",
+ "musl/src/thread/hexagon/__set_thread_area.s",
+ "musl/src/thread/hexagon/syscall_cp.s",
+ "musl/src/thread/hexagon/__unmapself.s",
"musl/src/thread/i386/clone.s",
"musl/src/thread/i386/__set_thread_area.s",
"musl/src/thread/i386/syscall_cp.s",