diff options
| -rw-r--r-- | clang/utils/TableGen/TableGen.cpp | 12 | ||||
| -rw-r--r-- | llvm/utils/TableGen/TableGen.cpp | 12 |
2 files changed, 14 insertions, 10 deletions
diff --git a/clang/utils/TableGen/TableGen.cpp b/clang/utils/TableGen/TableGen.cpp index 1d677e7a2a1..d94ff5937b2 100644 --- a/clang/utils/TableGen/TableGen.cpp +++ b/clang/utils/TableGen/TableGen.cpp @@ -264,9 +264,11 @@ int main(int argc, char **argv) { return TableGenMain(argv[0], &ClangTableGenMain); } -extern "C" { +#ifdef __has_feature +#if __has_feature(address_sanitizer) +#include <sanitizer/lsan_interface.h> // Disable LeakSanitizer for this binary as it has too many leaks that are not -// very interesting to fix. LeakSanitizerIsTurnedOffForTheCurrentProcess is -// explained in compiler-rt/include/sanitizer/lsan_interface.h -int LeakSanitizerIsTurnedOffForTheCurrentProcess() { return 1; } -} // extern "C" +// very interesting to fix. See compiler-rt/include/sanitizer/lsan_interface.h . +int __lsan_is_turned_off() { return 1; } +#endif // __has_feature(address_sanitizer) +#endif // defined(__has_feature) diff --git a/llvm/utils/TableGen/TableGen.cpp b/llvm/utils/TableGen/TableGen.cpp index 669127c3b0b..00c3a6fd91f 100644 --- a/llvm/utils/TableGen/TableGen.cpp +++ b/llvm/utils/TableGen/TableGen.cpp @@ -181,9 +181,11 @@ int main(int argc, char **argv) { return TableGenMain(argv[0], &LLVMTableGenMain); } -extern "C" { +#ifdef __has_feature +#if __has_feature(address_sanitizer) +#include <sanitizer/lsan_interface.h> // Disable LeakSanitizer for this binary as it has too many leaks that are not -// very interesting to fix. LeakSanitizerIsTurnedOffForTheCurrentProcess is -// explained in compiler-rt/include/sanitizer/lsan_interface.h -int LeakSanitizerIsTurnedOffForTheCurrentProcess() { return 1; } -} // extern "C" +// very interesting to fix. See compiler-rt/include/sanitizer/lsan_interface.h . +int __lsan_is_turned_off() { return 1; } +#endif // __has_feature(address_sanitizer) +#endif // defined(__has_feature) |

