aboutsummaryrefslogtreecommitdiff
path: root/lib/std
diff options
context:
space:
mode:
authorYANG Xudong <yangxudong@ymatrix.cn>2024-08-08 04:06:29 +0800
committerGitHub <noreply@github.com>2024-08-07 13:06:29 -0700
commitb8705ed6527e779a140e8beccb48d424dbbdf856 (patch)
treef9d09269ffe6446ae53ddedc4b3657f97e97bf35 /lib/std
parent4d6429fc4fd299cdfb2256d4aac87bc6551ba09e (diff)
downloadzig-b8705ed6527e779a140e8beccb48d424dbbdf856.tar.gz
zig-b8705ed6527e779a140e8beccb48d424dbbdf856.zip
loongarch: various architecture specific fixes (#20912)
Diffstat (limited to 'lib/std')
-rw-r--r--lib/std/mem.zig8
-rw-r--r--lib/std/os/linux.zig1
2 files changed, 9 insertions, 0 deletions
diff --git a/lib/std/mem.zig b/lib/std/mem.zig
index 984f1198ac..1fd8af950a 100644
--- a/lib/std/mem.zig
+++ b/lib/std/mem.zig
@@ -17,6 +17,14 @@ pub const page_size = switch (builtin.cpu.arch) {
else => 4 * 1024,
},
.sparc64 => 8 * 1024,
+ .loongarch32, .loongarch64 => switch (builtin.os.tag) {
+ // Linux default KConfig value is 16KiB
+ .linux => 16 * 1024,
+ // FIXME:
+ // There is no other OS supported yet. Use the same value
+ // as Linux for now.
+ else => 16 * 1024,
+ },
else => 4 * 1024,
};
diff --git a/lib/std/os/linux.zig b/lib/std/os/linux.zig
index 5f3f043d32..8f3b6a8ecc 100644
--- a/lib/std/os/linux.zig
+++ b/lib/std/os/linux.zig
@@ -132,6 +132,7 @@ pub const SYS = switch (@import("builtin").cpu.arch) {
.riscv64 => syscalls.RiscV64,
.sparc => syscalls.Sparc,
.sparc64 => syscalls.Sparc64,
+ .loongarch64 => syscalls.LoongArch64,
.m68k => syscalls.M68k,
.mips, .mipsel => syscalls.MipsO32,
.mips64, .mips64el => if (builtin.abi == .gnuabin32)