[PATCH] D38381: [libunwind] Skip building x86 parts of UnwindRegisters*.S when targeting SjLj

Martin Storsjö via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Sep 28 13:30:52 PDT 2017


mstorsjo created this revision.
Herald added subscribers: kristof.beyls, aemerson.

This extends SVN r314197 (https://reviews.llvm.org/D38249) from the arm parts to the whole file (the x86 parts as well).


https://reviews.llvm.org/D38381

Files:
  src/UnwindRegistersRestore.S
  src/UnwindRegistersSave.S


Index: src/UnwindRegistersSave.S
===================================================================
--- src/UnwindRegistersSave.S
+++ src/UnwindRegistersSave.S
@@ -11,6 +11,8 @@
 
     .text
 
+#if !defined(__APPLE__) && !defined(__USING_SJLJ_EXCEPTIONS__)
+
 #if defined(__i386__)
 
 #
@@ -289,7 +291,7 @@
   mov    x0, #0                   // return UNW_ESUCCESS
   ret
 
-#elif defined(__arm__) && !(defined(__APPLE__) || defined(__USING_SJLJ_EXCEPTIONS__))
+#elif defined(__arm__)
 
 #if !defined(__ARM_ARCH_ISA_ARM)
   .thumb
@@ -471,5 +473,7 @@
   l.sw     124(r3), r31
 #endif
 
+#endif /* !defined(__APPLE__) && !defined(__USING_SJLJ_EXCEPTIONS__) */
+
 NO_EXEC_STACK_DIRECTIVE
 
Index: src/UnwindRegistersRestore.S
===================================================================
--- src/UnwindRegistersRestore.S
+++ src/UnwindRegistersRestore.S
@@ -11,6 +11,8 @@
 
   .text
 
+#if !defined(__APPLE__) && !defined(__USING_SJLJ_EXCEPTIONS__)
+
 #if defined(__i386__)
 DEFINE_LIBUNWIND_PRIVATE_FUNCTION(_ZN9libunwind13Registers_x866jumptoEv)
 #
@@ -308,7 +310,7 @@
   ldp    x0, x1,  [x0, #0x000]  // restore x0,x1
   ret    x30                    // jump to pc
 
-#elif defined(__arm__) && !(defined(__APPLE__) || defined(__USING_SJLJ_EXCEPTIONS__))
+#elif defined(__arm__)
 
 #if !defined(__ARM_ARCH_ISA_ARM)
   .thumb
@@ -491,5 +493,7 @@
 
 #endif
 
+#endif /* !defined(__APPLE__) && !defined(__USING_SJLJ_EXCEPTIONS__) */
+
 NO_EXEC_STACK_DIRECTIVE
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38381.117047.patch
Type: text/x-patch
Size: 1466 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20170928/fb725fb6/attachment.bin>


More information about the cfe-commits mailing list