[compiler-rt] [libcxxabi] [libunwind] [runtimes][PAC] Harden unwinding when possible (#138571) (PR #143230)
Anatoly Trosinenko via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 27 08:56:23 PDT 2025
================
@@ -129,26 +129,38 @@ struct UnwindInfoSections {
defined(_LIBUNWIND_SUPPORT_COMPACT_UNWIND) || \
defined(_LIBUNWIND_USE_DL_ITERATE_PHDR)
// No dso_base for SEH.
- uintptr_t dso_base;
+ uintptr_t
+ __LIBUNWIND_PTRAUTH_RI_PDD("UnwindInfoSections::dso_base") dso_base = 0;
#endif
#if defined(_LIBUNWIND_USE_DL_ITERATE_PHDR)
- size_t text_segment_length;
+ size_t __LIBUNWIND_PTRAUTH_RI_PDD("UnwindInfoSections::text_segment_length")
+ text_segment_length = 0;
#endif
#if defined(_LIBUNWIND_SUPPORT_DWARF_UNWIND)
- uintptr_t dwarf_section;
- size_t dwarf_section_length;
+ uintptr_t __LIBUNWIND_PTRAUTH_RI_PDD("UnwindInfoSections::dwarf_section")
+ dwarf_section = 0;
+ size_t __LIBUNWIND_PTRAUTH_RI_PDD("UnwindInfoSections::dwarf_section_length")
+ dwarf_section_length = 0;
#endif
#if defined(_LIBUNWIND_SUPPORT_DWARF_INDEX)
- uintptr_t dwarf_index_section;
- size_t dwarf_index_section_length;
+ uintptr_t __LIBUNWIND_PTRAUTH_RI_PDD(
+ "UnwindInfoSections::dwarf_index_section") dwarf_index_section = 0;
+ size_t __LIBUNWIND_PTRAUTH_RI_PDD(
+ "UnwindInfoSections::dwarf_index_section_length")
+ dwarf_index_section_length = 0;
#endif
#if defined(_LIBUNWIND_SUPPORT_COMPACT_UNWIND)
- uintptr_t compact_unwind_section;
- size_t compact_unwind_section_length;
+ uintptr_t __LIBUNWIND_PTRAUTH_RI_PDD(
+ "UnwindInfoSections::compact_unwind_section") compact_unwind_section = 0;
+ size_t __LIBUNWIND_PTRAUTH_RI_PDD(
+ "UnwindInfoSections::compact_unwind_section_length")
+ compact_unwind_section_length = 0;
#endif
#if defined(_LIBUNWIND_ARM_EHABI)
- uintptr_t arm_section;
- size_t arm_section_length;
+ uintptr_t __LIBUNWIND_PTRAUTH_RI_PDD("UnwindInfoSections::arm_section")
+ arm_section = 0;
+ size_t __LIBUNWIND_PTRAUTH_RI_PDD("UnwindInfoSections::arm_section_length")
+ arm_section_length = 0;
----------------
atrosinenko wrote:
These two fields doesn't seem to be used on AArch64.
https://github.com/llvm/llvm-project/pull/143230
More information about the llvm-commits
mailing list