[ubsan] Implement the -fcatch-undefined-behavior flag using a trapping
implementation; this is much more inline with the original implementation
(i.e., pre-ubsan) and does not require run-time library support.
The trapping implementation can be invoked using either '-fcatch-undefined-behavior'
or '-fsanitize=undefined-trap -fsanitize-undefined-trap-on-error', with the latter
being preferred. Eventually, the -fcatch-undefined-behavior' flag will be removed.
llvm-svn: 173848
diff --git a/clang/docs/UsersManual.rst b/clang/docs/UsersManual.rst
index eb17eed..75fc3bb 100644
--- a/clang/docs/UsersManual.rst
+++ b/clang/docs/UsersManual.rst
@@ -867,6 +867,14 @@
includes all of the checks listed below other than
``unsigned-integer-overflow``.
+ ``-fsanitize=undefined-trap``: This includes all sanitizers
+ included by ``-fsanitize=undefined``, except those that require
+ runtime support. This group of sanitizers are generally used
+ in conjunction with the ``-fsanitize-undefined-trap-on-error``
+ flag, which causes traps to be emitted, rather than calls to
+ runtime libraries. This includes all of the checks listed below
+ other than ``unsigned-integer-overflow`` and ``vptr``.
+
The following more fine-grained checks are also available:
- ``-fsanitize=alignment``: Use of a misaligned pointer or creation