mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-17 04:56:36 +00:00
[libc++] Add a link to __builtin_verbose_trap from the hardening docs (#126930)
This commit is contained in:
parent
31cb807537
commit
dbfb29fd45
@ -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
|
||||
|
Loading…
x
Reference in New Issue
Block a user