[clang] [Clang][CodeGen] Emit “trap reasons” on UBSan traps (PR #145967)
Thurston Dang via cfe-commits
cfe-commits at lists.llvm.org
Fri Jul 11 14:51:31 PDT 2025
thurstond wrote:
> Complements [this feature](https://github.com/llvm/llvm-project/pull/141997); adds a synthetic inline frame named __clang_trap_msg$<Category>$<TrapMessage> in debug info. [stub, since I'm not 100% sure on this and kind of just repeats what's already been stated in the first paragraph].
AFAICS the key differences are:
- -fsanitize-annotate-debug-info (tries to) annotate all the UBSan-added instructions, not just the final (trap) instruction; this makes it useful for profiling. It works with all the UBSan modes (trap, min-rt, full rt). Additionally, it will use the precise SanitizerOrdinal name if available, only falling back to the SanitizerHandler name if it is ambiguous.
- trap reasons annotates only the trap instruction and always uses the SanitizerHandler information. The benefits are it has more informative messages and it integrates well with LLDB's frame recognizer.
(I'm not suggesting you need to put all this in the commit message; this comment is largely to +1 that these features are complementary.)
https://github.com/llvm/llvm-project/pull/145967
More information about the cfe-commits
mailing list