diff options
| author | mlugg <mlugg@mlugg.co.uk> | 2025-09-17 23:03:45 +0100 |
|---|---|---|
| committer | mlugg <mlugg@mlugg.co.uk> | 2025-09-30 13:44:54 +0100 |
| commit | dd8d59686a069fdb72d9f0753e3482ff99cce98c (patch) | |
| tree | 0a90991d41626bb9400a1d6cf956d10b99ed3a6c /lib/std/debug/cpu_context.zig | |
| parent | a18fd41064493e742eacebc88e2afeadd54ff6f0 (diff) | |
| download | zig-dd8d59686a069fdb72d9f0753e3482ff99cce98c.tar.gz zig-dd8d59686a069fdb72d9f0753e3482ff99cce98c.zip | |
std.debug: miscellaneous fixes
Mostly on macOS, since Loris showed me a not-great stack trace, and I
spent 8 hours trying to make it better. The dyld shared cache is
designed in a way which makes this really hard to do right, and
documentation is non-existent, but this *seems* to work pretty well.
I'll leave the ruling on whether I did a good job to CI and our users.
Diffstat (limited to 'lib/std/debug/cpu_context.zig')
| -rw-r--r-- | lib/std/debug/cpu_context.zig | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/std/debug/cpu_context.zig b/lib/std/debug/cpu_context.zig index 9859575fa3..b9dd49767f 100644 --- a/lib/std/debug/cpu_context.zig +++ b/lib/std/debug/cpu_context.zig @@ -214,6 +214,12 @@ pub fn fromWindowsContext(ctx: *const std.os.windows.CONTEXT) Native { .sp = ctx.Sp, .pc = ctx.Pc, }, + .thumb => .{ .r = .{ + ctx.R0, ctx.R1, ctx.R2, ctx.R3, + ctx.R4, ctx.R5, ctx.R6, ctx.R7, + ctx.R8, ctx.R9, ctx.R10, ctx.R11, + ctx.R12, ctx.Sp, ctx.Lr, ctx.Pc, + } }, else => comptime unreachable, }; } |
