| ... | ... | @@ -2323,38 +2323,38 @@ pub const debugger_matrix: []const RunnerTarget = &.{ |
| 2323 | 2323 | }, |
| 2324 | 2324 | }; |
| 2325 | 2325 | |
| 2326 | | fn compatible32bitArch(host: *const std.Target) ?std.Target.Cpu.Arch { |
| 2326 | fn supportedCompatArch(host: *const std.Target, arch: std.Target.Cpu.Arch) bool { |
| 2327 | 2327 | return switch (host.os.tag) { |
| 2328 | 2328 | .freebsd => switch (host.cpu.arch) { |
| 2329 | | .aarch64 => .arm, |
| 2330 | | .powerpc64 => .powerpc, |
| 2331 | | else => null, |
| 2329 | .aarch64 => arch == .arm, |
| 2330 | else => false, |
| 2332 | 2331 | }, |
| 2333 | 2332 | .illumos => switch (host.cpu.arch) { |
| 2334 | | .x86_64 => .x86, |
| 2335 | | else => null, |
| 2333 | .x86_64 => arch == .x86, |
| 2334 | else => false, |
| 2336 | 2335 | }, |
| 2337 | 2336 | .linux => switch (host.cpu.arch) { |
| 2338 | | .aarch64 => .arm, |
| 2339 | | .aarch64_be => .armeb, |
| 2340 | | .mips64 => .mips, |
| 2341 | | .mips64el => .mipsel, |
| 2342 | | .powerpc64 => .powerpc, |
| 2343 | | .sparc64 => .sparc, |
| 2344 | | .x86_64 => .x86, |
| 2345 | | else => null, |
| 2337 | .aarch64 => arch == .arm or arch == .thumb, |
| 2338 | .aarch64_be => arch == .armeb or arch == .thumbeb, |
| 2339 | .mips64 => arch == .mips, |
| 2340 | .mips64el => arch == .mipsel, |
| 2341 | .powerpc64 => arch == .powerpc, |
| 2342 | .riscv64 => arch == .riscv32, |
| 2343 | .sparc64 => arch == .sparc, |
| 2344 | .x86_64 => arch == .x86, |
| 2345 | else => false, |
| 2346 | 2346 | }, |
| 2347 | 2347 | .netbsd => switch (host.cpu.arch) { |
| 2348 | | .riscv64 => .riscv32, |
| 2349 | | .sparc64 => .sparc, |
| 2350 | | .x86_64 => .x86, |
| 2351 | | else => null, |
| 2348 | .riscv64 => arch == .riscv32, |
| 2349 | .sparc64 => arch == .sparc, |
| 2350 | .x86_64 => arch == .x86, |
| 2351 | else => false, |
| 2352 | 2352 | }, |
| 2353 | 2353 | .windows => switch (host.cpu.arch) { |
| 2354 | | .x86_64 => .x86, |
| 2355 | | else => null, |
| 2354 | .x86_64 => arch == .x86, |
| 2355 | else => false, |
| 2356 | 2356 | }, |
| 2357 | | else => null, |
| 2357 | else => false, |
| 2358 | 2358 | }; |
| 2359 | 2359 | } |
| 2360 | 2360 | |
| ... | ... | @@ -2362,11 +2362,8 @@ pub fn isNative(actual_target: *const std.Build.ResolvedTarget, host: *const std |
| 2362 | 2362 | if (actual_target.query.isNative()) return true; |
| 2363 | 2363 | const actual = &actual_target.result; |
| 2364 | 2364 | |
| 2365 | | if (actual.cpu.arch != host.cpu.arch and |
| 2366 | | actual.cpu.arch != compatible32bitArch(host)) |
| 2367 | | { |
| 2365 | if (actual.cpu.arch != host.cpu.arch and !supportedCompatArch(host, actual.cpu.arch)) |
| 2368 | 2366 | return false; |
| 2369 | | } |
| 2370 | 2367 | |
| 2371 | 2368 | if (actual.os.tag != host.os.tag) |
| 2372 | 2369 | return false; |