authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-08-09 05:08:36+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2026-08-09 17:53:04+02:00
log0d947ae87a2280d6f4acec16cf2307d11aed03e2
tree7a35ad1dbbee6eca56b158646c1d65f1be65768b
parent5cbafcfd56862d9042b2446b0cac9d07d4d141a0
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

std.debug: use a different register number for pc on sparc

Also report the floating-point registers as unsupported rather than invalid.

2 files changed, 6 insertions(+), 2 deletions(-)

lib/std/debug/Dwarf.zig+1-1
...@@ -1462,7 +1462,7 @@ pub fn ipRegNum(arch: std.Target.Cpu.Arch) ?u16 {...@@ -1462,7 +1462,7 @@ pub fn ipRegNum(arch: std.Target.Cpu.Arch) ?u16 {
1462 .powerpc, .powerpcle, .powerpc64, .powerpc64le => 67,1462 .powerpc, .powerpcle, .powerpc64, .powerpc64le => 67,
1463 .riscv32, .riscv32be, .riscv64, .riscv64be => 65,1463 .riscv32, .riscv32be, .riscv64, .riscv64be => 65,
1464 .s390x => 65,1464 .s390x => 65,
1465 .sparc, .sparc64 => 32,1465 .sparc, .sparc64 => 65,
1466 .ve => 144,1466 .ve => 144,
1467 .x86 => 8,1467 .x86 => 8,
1468 .x86_64 => 16,1468 .x86_64 => 16,
lib/std/debug/cpu_context.zig+5-1
...@@ -1613,7 +1613,11 @@ const Sparc = extern struct {...@@ -1613,7 +1613,11 @@ const Sparc = extern struct {
1613 8...15 => return @ptrCast(&ctx.o[register_num - 8]),1613 8...15 => return @ptrCast(&ctx.o[register_num - 8]),
1614 16...23 => return @ptrCast(&ctx.l[register_num - 16]),1614 16...23 => return @ptrCast(&ctx.l[register_num - 16]),
1615 24...31 => return @ptrCast(&ctx.i[register_num - 24]),1615 24...31 => return @ptrCast(&ctx.i[register_num - 24]),
1616 32 => return @ptrCast(&ctx.pc),1616 65 => return @ptrCast(&ctx.pc),
1617
1618 32...63 => return error.UnsupportedRegister, // F0-F31
1619 64 => return error.UnsupportedRegister, // Y
1620 72...87 => return error.UnsupportedRegister, // D0-D15
16171621
1618 else => return error.InvalidRegister,1622 else => return error.InvalidRegister,
1619 }1623 }