diff options
author | Abseil Team <absl-team@google.com> | 2023-10-04 13:31:31 -0700 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2023-10-04 13:32:09 -0700 |
commit | 8d5db9b986728577fed7d8ec6483d6db669f0a4a (patch) | |
tree | b8223f7c86a5694bef4f46a8533493063dde17d9 /absl | |
parent | d26b6250df3d76fd2ff894269118cccda1c1654c (diff) |
With sufficiently high-levels of optimization, this function
and those that call it can be inlined sufficiently far
to mess up high-level skip-counts. But this function
assumes it is the bottommost frame, as in the comment below.
PiperOrigin-RevId: 570790048
Change-Id: I4d354f9e79e13aaa6a8a62a9e0870fbeac075de6
Diffstat (limited to 'absl')
-rw-r--r-- | absl/debugging/internal/stacktrace_aarch64-inl.inc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/absl/debugging/internal/stacktrace_aarch64-inl.inc b/absl/debugging/internal/stacktrace_aarch64-inl.inc index 3f087162..c46a91db 100644 --- a/absl/debugging/internal/stacktrace_aarch64-inl.inc +++ b/absl/debugging/internal/stacktrace_aarch64-inl.inc @@ -158,6 +158,9 @@ static void **NextStackFrame(void **old_frame_pointer, const void *uc, } template <bool IS_STACK_FRAMES, bool IS_WITH_CONTEXT> +// We count on the bottom frame being this one. See the comment +// at prev_return_address +ABSL_ATTRIBUTE_NOINLINE ABSL_ATTRIBUTE_NO_SANITIZE_ADDRESS // May read random elements from stack. ABSL_ATTRIBUTE_NO_SANITIZE_MEMORY // May read random elements from stack. static int UnwindImpl(void** result, int* sizes, int max_depth, int skip_count, |