llvm-project
32503309 - [asan] Disable instrumentation for available_externally global with COFF (#81109)

Commit
1 year ago
[asan] Disable instrumentation for available_externally global with COFF (#81109) For COFF, available_externally global will be instrumented because of the lack of filtering, and will trigger the Verifier pass assertion and crash the compilation. This patch will filter out the available_externally global for COFF. For non-COFF, `!G->hasExactDefinition()` in line 1954 will filter out the available_externally globals. There is a related bug reported in https://bugs.llvm.org/show_bug.cgi?id=47950 / https://github.com/llvm/llvm-project/issues/47294. I tried the reproducer posted on the page and this will fix the problem. Reproducer: ``` #include <locale> void grouping_impl() { std::use_facet<std::numpunct<char>>(std::locale()); } // clang -fsanitize=address -D_DLL -std=c++14 -c format.cc ```
Author
Parents
Loading