diff options
Diffstat (limited to 'lib/std/debug.zig')
| -rw-r--r-- | lib/std/debug.zig | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/std/debug.zig b/lib/std/debug.zig index a3a8a533ee..5ddc751f3d 100644 --- a/lib/std/debug.zig +++ b/lib/std/debug.zig @@ -567,10 +567,12 @@ pub const StackIterator = struct { } else void = if (have_ucontext) null else {}, pub fn init(first_address: ?usize, fp: ?usize) StackIterator { - if (native_arch == .sparc64) { + if (native_arch.isSPARC()) { // Flush all the register windows on stack. - asm volatile ( - \\ flushw + asm volatile (if (std.Target.sparc.featureSetHas(builtin.cpu.features, .v9)) + "flushw" + else + "ta 3" // ST_FLUSH_WINDOWS ::: "memory"); } |
