[libcxx-commits] [libcxx] [libc++] Add a link to __builtin_verbose_trap from the hardening docs (PR #126930)
via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Feb 12 07:50:24 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libcxx
Author: Louis Dionne (ldionne)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/126930.diff
1 Files Affected:
- (modified) libcxx/docs/Hardening.rst (+1-3)
``````````diff
diff --git a/libcxx/docs/Hardening.rst b/libcxx/docs/Hardening.rst
index d399b94d27c19..097ad4b73b126 100644
--- a/libcxx/docs/Hardening.rst
+++ b/libcxx/docs/Hardening.rst
@@ -248,14 +248,12 @@ Hardening assertion failure
===========================
In production modes (``fast`` and ``extensive``), a hardening assertion failure
-immediately ``_traps <https://llvm.org/docs/LangRef.html#llvm-trap-intrinsic>``
+immediately ``_traps <https://clang.llvm.org/docs/LanguageExtensions.html#builtin-verbose-trap>``
the program. This is the safest approach that also minimizes the code size
penalty as the failure handler maps to a single instruction. The downside is
that the failure provides no additional details other than the stack trace
(which might also be affected by optimizations).
-TODO(hardening): describe ``__builtin_verbose_trap`` once we can use it.
-
In the ``debug`` mode, an assertion failure terminates the program in an
unspecified manner and also outputs the associated error message to the error
output. This is less secure and increases the size of the binary (among other
``````````
</details>
https://github.com/llvm/llvm-project/pull/126930
More information about the libcxx-commits
mailing list