[libunwind] 55abdef - [libunwind] Increase the external value of _LIBUNWIND_CURSOR_SIZE for SEH/x86_64

Martin Storsjö via cfe-commits cfe-commits at lists.llvm.org
Mon Apr 10 14:03:41 PDT 2023


Author: Martin Storsjö
Date: 2023-04-11T00:00:30+03:00
New Revision: 55abdef3dac681866503ab286c3be6b4e8be3a9a

URL: https://github.com/llvm/llvm-project/commit/55abdef3dac681866503ab286c3be6b4e8be3a9a
DIFF: https://github.com/llvm/llvm-project/commit/55abdef3dac681866503ab286c3be6b4e8be3a9a.diff

LOG: [libunwind] Increase the external value of _LIBUNWIND_CURSOR_SIZE for SEH/x86_64

For x86_64 Windows targets (that use SEH), _LIBUNWIND_CURSOR_SIZE
is 204; this fixes corruption in test cases that include libunwind.h
without manually defining _LIBUNWIND_IS_NATIVE_ONLY.

If the libunwind.h header is included without defining
_LIBUNWIND_IS_NATIVE_ONLY (like in the libunwind test cases), the
sizes are set to accommodate the maximum possible cursors and
contexts.

(Alternatively, __libunwind_config.h should be changed to default
to native unwinding unless cross unwinding has been requested.
Cross unwinding isn't implemented as far as I know anyway.)

Differential Revision: https://reviews.llvm.org/D147634

Added: 
    

Modified: 
    libunwind/include/__libunwind_config.h

Removed: 
    


################################################################################
diff  --git a/libunwind/include/__libunwind_config.h b/libunwind/include/__libunwind_config.h
index a4e1a3613bbf9..a317a36677d3c 100644
--- a/libunwind/include/__libunwind_config.h
+++ b/libunwind/include/__libunwind_config.h
@@ -198,7 +198,7 @@
 # define _LIBUNWIND_TARGET_S390X 1
  #define _LIBUNWIND_TARGET_LOONGARCH 1
 # define _LIBUNWIND_CONTEXT_SIZE 167
-# define _LIBUNWIND_CURSOR_SIZE 179
+# define _LIBUNWIND_CURSOR_SIZE 204
 # define _LIBUNWIND_HIGHEST_DWARF_REGISTER 287
 #endif // _LIBUNWIND_IS_NATIVE_ONLY
 


        


More information about the cfe-commits mailing list