| author | |
| committer | |
| log | 8a78d875cc1cdab2648e7413fc0d2eea5afc6991 |
| tree | 57301c426505167cbe1580e2912304fe2a5483ac |
| parent | 4de661ef18d4cdc7f859c8bc1990e8a0519163db |
| signature |
13 files changed, 73 insertions(+), 5 deletions(-)
lib/std/os/linux/aarch64.zig+7-1| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const linux = std.os.linux; |
| ... | ... | @@ -122,7 +123,12 @@ pub fn clone() callconv(.Naked) usize { |
| 122 | 123 | \\ ret |
| 123 | 124 | \\ |
| 124 | 125 | \\ // child |
| 125 | \\1: .cfi_undefined lr | |
| 126 | \\1: | |
| 127 | ); | |
| 128 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 129 | \\ .cfi_undefined lr | |
| 130 | ); | |
| 131 | asm volatile ( | |
| 126 | 132 | \\ mov fp, 0 |
| 127 | 133 | \\ mov lr, 0 |
| 128 | 134 | \\ |
lib/std/os/linux/hexagon.zig+5-1| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const iovec = std.posix.iovec; |
| 3 | 4 | const iovec_const = std.posix.iovec_const; |
| ... | ... | @@ -117,8 +118,11 @@ pub fn clone() callconv(.Naked) usize { |
| 117 | 118 | \\ |
| 118 | 119 | \\ p0 = cmp.eq(r0, #0) |
| 119 | 120 | \\ if (!p0) dealloc_return |
| 120 | \\ | |
| 121 | ); | |
| 122 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 121 | 123 | \\ .cfi_undefined r31 |
| 124 | ); | |
| 125 | asm volatile ( | |
| 122 | 126 | \\ r30 = #0 |
| 123 | 127 | \\ r31 = #0 |
| 124 | 128 | \\ |
lib/std/os/linux/loongarch64.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const linux = std.os.linux; |
| 3 | 4 | const SYS = linux.SYS; |
| ... | ... | @@ -121,7 +122,11 @@ pub fn clone() callconv(.Naked) usize { |
| 121 | 122 | \\ beqz $a0, 1f # whether child process |
| 122 | 123 | \\ jirl $zero, $ra, 0 # parent process return |
| 123 | 124 | \\1: |
| 125 | ); | |
| 126 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 124 | 127 | \\ .cfi_undefined 1 |
| 128 | ); | |
| 129 | asm volatile ( | |
| 125 | 130 | \\ move $fp, $zero |
| 126 | 131 | \\ move $ra, $zero |
| 127 | 132 | \\ |
lib/std/os/linux/mips.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const linux = std.os.linux; |
| ... | ... | @@ -231,7 +232,11 @@ pub fn clone() callconv(.Naked) usize { |
| 231 | 232 | \\ jr $ra |
| 232 | 233 | \\ nop |
| 233 | 234 | \\1: |
| 235 | ); | |
| 236 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 234 | 237 | \\ .cfi_undefined $ra |
| 238 | ); | |
| 239 | asm volatile ( | |
| 235 | 240 | \\ move $fp, $zero |
| 236 | 241 | \\ move $ra, $zero |
| 237 | 242 | \\ |
lib/std/os/linux/mips64.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const linux = std.os.linux; |
| ... | ... | @@ -210,7 +211,11 @@ pub fn clone() callconv(.Naked) usize { |
| 210 | 211 | \\ jr $ra |
| 211 | 212 | \\ nop |
| 212 | 213 | \\1: |
| 214 | ); | |
| 215 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 213 | 216 | \\ .cfi_undefined $ra |
| 217 | ); | |
| 218 | asm volatile ( | |
| 214 | 219 | \\ move $fp, $zero |
| 215 | 220 | \\ move $ra, $zero |
| 216 | 221 | \\ |
lib/std/os/linux/powerpc.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const linux = std.os.linux; |
| ... | ... | @@ -176,7 +177,11 @@ pub fn clone() callconv(.Naked) usize { |
| 176 | 177 | \\ |
| 177 | 178 | \\ #else: we're the child |
| 178 | 179 | \\ 2: |
| 180 | ); | |
| 181 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 179 | 182 | \\ .cfi_undefined lr |
| 183 | ); | |
| 184 | asm volatile ( | |
| 180 | 185 | \\ li 31, 0 |
| 181 | 186 | \\ mtlr 0 |
| 182 | 187 | \\ |
lib/std/os/linux/powerpc64.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const linux = std.os.linux; |
| ... | ... | @@ -161,7 +162,11 @@ pub fn clone() callconv(.Naked) usize { |
| 161 | 162 | \\ bnelr cr7 |
| 162 | 163 | \\ |
| 163 | 164 | \\ # we're the child |
| 165 | ); | |
| 166 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 164 | 167 | \\ .cfi_undefined lr |
| 168 | ); | |
| 169 | asm volatile ( | |
| 165 | 170 | \\ li 31, 0 |
| 166 | 171 | \\ mtlr 0 |
| 167 | 172 | \\ |
lib/std/os/linux/riscv32.zig+7-1| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const iovec = std.posix.iovec; |
| 3 | 4 | const iovec_const = std.posix.iovec_const; |
| ... | ... | @@ -120,7 +121,12 @@ pub fn clone() callconv(.Naked) usize { |
| 120 | 121 | \\ ret |
| 121 | 122 | \\ |
| 122 | 123 | \\ # Child |
| 123 | \\1: .cfi_undefined ra | |
| 124 | \\1: | |
| 125 | ); | |
| 126 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 127 | \\ .cfi_undefined ra | |
| 128 | ); | |
| 129 | asm volatile ( | |
| 124 | 130 | \\ mv fp, zero |
| 125 | 131 | \\ mv ra, zero |
| 126 | 132 | \\ |
lib/std/os/linux/riscv64.zig+7-1| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const iovec = std.posix.iovec; |
| 3 | 4 | const iovec_const = std.posix.iovec_const; |
| ... | ... | @@ -120,7 +121,12 @@ pub fn clone() callconv(.Naked) usize { |
| 120 | 121 | \\ ret |
| 121 | 122 | \\ |
| 122 | 123 | \\ # Child |
| 123 | \\1: .cfi_undefined ra | |
| 124 | \\1: | |
| 125 | ); | |
| 126 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 127 | \\ .cfi_undefined ra | |
| 128 | ); | |
| 129 | asm volatile ( | |
| 124 | 130 | \\ mv fp, zero |
| 125 | 131 | \\ mv ra, zero |
| 126 | 132 | \\ |
lib/std/os/linux/s390x.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const iovec = std.posix.iovec; |
| 3 | 4 | const iovec_const = std.posix.iovec_const; |
| ... | ... | @@ -134,7 +135,11 @@ pub fn clone() callconv(.Naked) usize { |
| 134 | 135 | \\bnzr %%r14 |
| 135 | 136 | \\ |
| 136 | 137 | \\# we're the child |
| 138 | ); | |
| 139 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 137 | 140 | \\.cfi_undefined %%r14 |
| 141 | ); | |
| 142 | asm volatile ( | |
| 138 | 143 | \\lghi %%r11, 0 |
| 139 | 144 | \\lghi %%r14, 0 |
| 140 | 145 | \\ |
lib/std/os/linux/sparc64.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const pid_t = linux.pid_t; |
| ... | ... | @@ -215,7 +216,11 @@ pub fn clone() callconv(.Naked) usize { |
| 215 | 216 | \\ restore |
| 216 | 217 | \\2: |
| 217 | 218 | \\ # Child process |
| 219 | ); | |
| 220 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 218 | 221 | \\ .cfi_undefined %%i7 |
| 222 | ); | |
| 223 | asm volatile ( | |
| 219 | 224 | \\ mov %%g0, %%fp |
| 220 | 225 | \\ mov %%g0, %%i7 |
| 221 | 226 | \\ |
lib/std/os/linux/x86.zig+5| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const linux = std.os.linux; |
| ... | ... | @@ -156,7 +157,11 @@ pub fn clone() callconv(.Naked) usize { |
| 156 | 157 | \\ retl |
| 157 | 158 | \\ |
| 158 | 159 | \\1: |
| 160 | ); | |
| 161 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 159 | 162 | \\ .cfi_undefined %%eip |
| 163 | ); | |
| 164 | asm volatile ( | |
| 160 | 165 | \\ xorl %%ebp,%%ebp |
| 161 | 166 | \\ |
| 162 | 167 | \\ popl %%eax |
lib/std/os/linux/x86_64.zig+7-1| ... | ... | @@ -1,3 +1,4 @@ |
| 1 | const builtin = @import("builtin"); | |
| 1 | 2 | const std = @import("../../std.zig"); |
| 2 | 3 | const maxInt = std.math.maxInt; |
| 3 | 4 | const linux = std.os.linux; |
| ... | ... | @@ -117,7 +118,12 @@ pub fn clone() callconv(.Naked) usize { |
| 117 | 118 | \\ jz 1f |
| 118 | 119 | \\ retq |
| 119 | 120 | \\ |
| 120 | \\1: .cfi_undefined %%rip | |
| 121 | \\1: | |
| 122 | ); | |
| 123 | if (builtin.unwind_tables != .none or !builtin.strip_debug_info) asm volatile ( | |
| 124 | \\ .cfi_undefined %%rip | |
| 125 | ); | |
| 126 | asm volatile ( | |
| 121 | 127 | \\ xorl %%ebp,%%ebp |
| 122 | 128 | \\ |
| 123 | 129 | \\ popq %%rdi |