[PATCH] D32450: [libunwind] Add 64-bit SPARC support

James Y Knight via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 24 18:05:19 PDT 2017


jyknight added inline comments.


================
Comment at: libunwind/src/DwarfParser.hpp:659
+      _LIBUNWIND_TRACE_DWARF("DW_CGA_GNU_window_save\n");
       break;
     case DW_CFA_GNU_args_size:
----------------
joerg wrote:
> compnerd wrote:
> > Is the `DW_CFA_GNU_window_save` operand limited to SPARC?  I think that we should handle this generically, not specific to SPARC.  We can add a special case for SPARC if the generic way to handle windows registers doesn't work.
> Yes. It only makes sense on architectures with register windows and that essentially means SPARC. See the NetBSD version which goes as far as excluding the code for !sparc.
Yes, window-save is sparc specific. However, it looks the value was reused for a totally different purpose on aarch64 (https://github.com/gcc-mirror/gcc/blob/master/libgcc/unwind-dw2.c#L1189). So this code should really be in a sparc conditional.




https://reviews.llvm.org/D32450





More information about the llvm-commits mailing list