Skip to content

Commit b8705ed

Browse files
authored
loongarch: various architecture specific fixes (#20912)
1 parent 4d6429f commit b8705ed

File tree

4 files changed

+12
-1
lines changed

4 files changed

+12
-1
lines changed

lib/std/mem.zig

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,14 @@ pub const page_size = switch (builtin.cpu.arch) {
1717
else => 4 * 1024,
1818
},
1919
.sparc64 => 8 * 1024,
20+
.loongarch32, .loongarch64 => switch (builtin.os.tag) {
21+
// Linux default KConfig value is 16KiB
22+
.linux => 16 * 1024,
23+
// FIXME:
24+
// There is no other OS supported yet. Use the same value
25+
// as Linux for now.
26+
else => 16 * 1024,
27+
},
2028
else => 4 * 1024,
2129
};
2230

lib/std/os/linux.zig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ pub const SYS = switch (@import("builtin").cpu.arch) {
132132
.riscv64 => syscalls.RiscV64,
133133
.sparc => syscalls.Sparc,
134134
.sparc64 => syscalls.Sparc64,
135+
.loongarch64 => syscalls.LoongArch64,
135136
.m68k => syscalls.M68k,
136137
.mips, .mipsel => syscalls.MipsO32,
137138
.mips64, .mips64el => if (builtin.abi == .gnuabin32)

src/glibc.zig

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1182,6 +1182,7 @@ fn buildSharedLib(
11821182
pub fn needsCrtiCrtn(target: std.Target) bool {
11831183
return switch (target.cpu.arch) {
11841184
.riscv32, .riscv64 => false,
1185+
.loongarch64 => false,
11851186
else => true,
11861187
};
11871188
}

src/musl.zig

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,8 @@ pub fn needsCrtiCrtn(target: std.Target) bool {
293293
return switch (target.cpu.arch) {
294294
.riscv32,
295295
.riscv64,
296-
.wasm32, .wasm64 => return false,
296+
.wasm32, .wasm64 => false,
297+
.loongarch64 => false,
297298
else => true,
298299
};
299300
// zig fmt: on

0 commit comments

Comments
 (0)