From c73df65ded64f0918b9654a8a4133e80444f8701 Mon Sep 17 00:00:00 2001 From: "taylor.fish" Date: Tue, 23 Sep 2025 20:37:03 -0700 Subject: [PATCH] Don't specify clobbers in `restore_rt` Per @alexrp, this is unnecessary in naked functions. --- lib/std/os/linux/aarch64.zig | 4 ++-- lib/std/os/linux/arm.zig | 4 ++-- lib/std/os/linux/hexagon.zig | 2 +- lib/std/os/linux/loongarch64.zig | 2 +- lib/std/os/linux/m68k.zig | 2 +- lib/std/os/linux/mips.zig | 2 +- lib/std/os/linux/mips64.zig | 2 +- lib/std/os/linux/powerpc.zig | 4 ++-- lib/std/os/linux/powerpc64.zig | 4 ++-- lib/std/os/linux/riscv32.zig | 2 +- lib/std/os/linux/riscv64.zig | 2 +- lib/std/os/linux/s390x.zig | 2 +- lib/std/os/linux/thumb.zig | 2 +- lib/std/os/linux/x86.zig | 4 ++-- lib/std/os/linux/x86_64.zig | 4 ++-- 15 files changed, 21 insertions(+), 21 deletions(-) diff --git a/lib/std/os/linux/aarch64.zig b/lib/std/os/linux/aarch64.zig index 2565e8984c..5fcf04c58b 100644 --- a/lib/std/os/linux/aarch64.zig +++ b/lib/std/os/linux/aarch64.zig @@ -141,12 +141,12 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ svc #0 : : [number] "i" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }), + ), else => asm volatile ( \\ svc #0 : : [number] "{x8}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }), + ), } } diff --git a/lib/std/os/linux/arm.zig b/lib/std/os/linux/arm.zig index 1b9bc913f8..5f41607efe 100644 --- a/lib/std/os/linux/arm.zig +++ b/lib/std/os/linux/arm.zig @@ -150,12 +150,12 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ svc #0 : : [number] "I" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }), + ), else => asm volatile ( \\ svc #0 : : [number] "{r7}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }), + ), } } diff --git a/lib/std/os/linux/hexagon.zig b/lib/std/os/linux/hexagon.zig index a3acbee50b..0568173cdf 100644 --- a/lib/std/os/linux/hexagon.zig +++ b/lib/std/os/linux/hexagon.zig @@ -135,7 +135,7 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ trap0(#0) : : [number] "{r6}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }); + ); } pub const F = struct { diff --git a/lib/std/os/linux/loongarch64.zig b/lib/std/os/linux/loongarch64.zig index 617a65d757..5a237739bb 100644 --- a/lib/std/os/linux/loongarch64.zig +++ b/lib/std/os/linux/loongarch64.zig @@ -143,7 +143,7 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ syscall 0 : : [number] "r" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .r12 = true, .r13 = true, .r14 = true, .r15 = true, .r16 = true, .r17 = true, .r18 = true, .r19 = true, .r20 = true, .memory = true }); + ); } pub const msghdr = extern struct { diff --git a/lib/std/os/linux/m68k.zig b/lib/std/os/linux/m68k.zig index fde03e3fa9..78851c3928 100644 --- a/lib/std/os/linux/m68k.zig +++ b/lib/std/os/linux/m68k.zig @@ -148,7 +148,7 @@ pub fn restore_rt() callconv(.naked) noreturn { asm volatile ("trap #0" : : [number] "{d0}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }); + ); } pub const F = struct { diff --git a/lib/std/os/linux/mips.zig b/lib/std/os/linux/mips.zig index 0293fb83e8..0958cf5a4b 100644 --- a/lib/std/os/linux/mips.zig +++ b/lib/std/os/linux/mips.zig @@ -254,7 +254,7 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ syscall : : [number] "{$2}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .r1 = true, .r3 = true, .r4 = true, .r5 = true, .r6 = true, .r7 = true, .r8 = true, .r9 = true, .r10 = true, .r11 = true, .r12 = true, .r13 = true, .r14 = true, .r15 = true, .r24 = true, .r25 = true, .hi = true, .lo = true, .memory = true }); + ); } pub const F = struct { diff --git a/lib/std/os/linux/mips64.zig b/lib/std/os/linux/mips64.zig index db6e5dc1ea..bb05e26531 100644 --- a/lib/std/os/linux/mips64.zig +++ b/lib/std/os/linux/mips64.zig @@ -233,7 +233,7 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ syscall : : [number] "{$2}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .r1 = true, .r3 = true, .r4 = true, .r5 = true, .r6 = true, .r7 = true, .r8 = true, .r9 = true, .r10 = true, .r11 = true, .r12 = true, .r13 = true, .r14 = true, .r15 = true, .r24 = true, .r25 = true, .hi = true, .lo = true, .memory = true }); + ); } pub const F = struct { diff --git a/lib/std/os/linux/powerpc.zig b/lib/std/os/linux/powerpc.zig index ee1887143a..3e876bb3f0 100644 --- a/lib/std/os/linux/powerpc.zig +++ b/lib/std/os/linux/powerpc.zig @@ -253,12 +253,12 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ sc : : [number] "i" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true, .cr0 = true, .r4 = true, .r5 = true, .r6 = true, .r7 = true, .r8 = true, .r9 = true, .r10 = true, .r11 = true, .r12 = true }), + ), else => _ = asm volatile ( \\ sc : : [number] "{r0}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true, .cr0 = true, .r4 = true, .r5 = true, .r6 = true, .r7 = true, .r8 = true, .r9 = true, .r10 = true, .r11 = true, .r12 = true }), + ), } } diff --git a/lib/std/os/linux/powerpc64.zig b/lib/std/os/linux/powerpc64.zig index ffb17551e3..70b11a86bb 100644 --- a/lib/std/os/linux/powerpc64.zig +++ b/lib/std/os/linux/powerpc64.zig @@ -238,12 +238,12 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ sc : : [number] "i" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true, .cr0 = true, .r4 = true, .r5 = true, .r6 = true, .r7 = true, .r8 = true, .r9 = true, .r10 = true, .r11 = true, .r12 = true }), + ), else => _ = asm volatile ( \\ sc : : [number] "{r0}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true, .cr0 = true, .r4 = true, .r5 = true, .r6 = true, .r7 = true, .r8 = true, .r9 = true, .r10 = true, .r11 = true, .r12 = true }), + ), } } diff --git a/lib/std/os/linux/riscv32.zig b/lib/std/os/linux/riscv32.zig index 31e97743dc..c86882ad6c 100644 --- a/lib/std/os/linux/riscv32.zig +++ b/lib/std/os/linux/riscv32.zig @@ -142,7 +142,7 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ ecall : : [number] "{x17}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }); + ); } pub const F = struct { diff --git a/lib/std/os/linux/riscv64.zig b/lib/std/os/linux/riscv64.zig index 3498fb8fba..028a1b2fbd 100644 --- a/lib/std/os/linux/riscv64.zig +++ b/lib/std/os/linux/riscv64.zig @@ -142,7 +142,7 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ ecall : : [number] "{x17}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }); + ); } pub const F = struct { diff --git a/lib/std/os/linux/s390x.zig b/lib/std/os/linux/s390x.zig index 50109aa35f..620aedfb69 100644 --- a/lib/std/os/linux/s390x.zig +++ b/lib/std/os/linux/s390x.zig @@ -154,7 +154,7 @@ pub fn restore_rt() callconv(.naked) noreturn { \\svc 0 : : [number] "{r1}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }); + ); } pub const F = struct { diff --git a/lib/std/os/linux/thumb.zig b/lib/std/os/linux/thumb.zig index 5146355d77..3e13bad1d8 100644 --- a/lib/std/os/linux/thumb.zig +++ b/lib/std/os/linux/thumb.zig @@ -151,5 +151,5 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ svc #0 : : [number] "I" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }); + ); } diff --git a/lib/std/os/linux/x86.zig b/lib/std/os/linux/x86.zig index 8a2310ebed..0ffe9c2956 100644 --- a/lib/std/os/linux/x86.zig +++ b/lib/std/os/linux/x86.zig @@ -187,12 +187,12 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ int $0x80 : : [number] "i" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }), + ), else => asm volatile ( \\ int $0x80 : : [number] "{eax}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .memory = true }), + ), } } diff --git a/lib/std/os/linux/x86_64.zig b/lib/std/os/linux/x86_64.zig index cf9714dd13..583fad872d 100644 --- a/lib/std/os/linux/x86_64.zig +++ b/lib/std/os/linux/x86_64.zig @@ -137,12 +137,12 @@ pub fn restore_rt() callconv(.naked) noreturn { \\ syscall : : [number] "i" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .rcx = true, .r11 = true, .memory = true }), + ), else => asm volatile ( \\ syscall : : [number] "{rax}" (@intFromEnum(SYS.rt_sigreturn)), - : .{ .rcx = true, .r11 = true, .memory = true }), + ), } }