[compiler-rt] [llvm] [msan] Add experimental '-mllvm -msan-embed-faulting-instruction' and MSAN_OPTIONS=print_faulting_instruction (PR #136539)
Thurston Dang via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 22 18:53:09 PDT 2025
thurstond wrote:
> > * Compared to the proposed but not implemented `MSAN_OPTIONS=ignore_faulting_instruction=...`: DebugInsertCheck and DebugInstrumentInstruction are configured at compile-time, while ignore_faulting_instruction is compile one-time with instrumentation and then configure at runtime which instructions to skip.
>
> How big is binary size overhead?
Compared to regular MSan, the binary is around 11% larger with `embed-faulting-instruction=name`. This is negligible compared to the overall overhead of MSan (114% increase), hence it can be deployed in most cases where MSan is used (nonetheless, the default is off).
File size for `span_server` built with '-c opt':
- No MSan: 762,042,216 bytes
- Regular MSan (-embed-faulting-instruction=none) i.e., : 1,632,739,840 bytes (114% overhead)
- MSan with -embed-faulting-instruction=name: 1,719,331,688 (125% overhead)
- MSan with -embed-faulting-instruction=full: [build timed out]
https://github.com/llvm/llvm-project/pull/136539
More information about the llvm-commits
mailing list