Commit 2533bc23 authored by Petr Hosek's avatar Petr Hosek
Browse files

Revert "[lsan] Support LeakSanitizer runtime on Fuchsia"

This reverts commit d59e3429.
parent 57540c96
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -640,7 +640,7 @@ else()
endif()

if (COMPILER_RT_HAS_SANITIZER_COMMON AND LSAN_SUPPORTED_ARCH AND
    OS_NAME MATCHES "Darwin|Linux|NetBSD|Fuchsia")
    OS_NAME MATCHES "Darwin|Linux|NetBSD")
  set(COMPILER_RT_HAS_LSAN TRUE)
else()
  set(COMPILER_RT_HAS_LSAN FALSE)
+0 −2
Original line number Diff line number Diff line
@@ -480,8 +480,6 @@ bool GetThreadRangesLocked(tid_t os_id, uptr *stack_begin, uptr *stack_end,
  return true;
}

void GetAllThreadAllocatorCachesLocked(InternalMmapVector<uptr> *caches) {}

void ForEachExtraStackRange(tid_t os_id, RangeIteratorCallback callback,
                            void *arg) {
  __asan::AsanThread *t = __asan::GetAsanThreadByOsIDLocked(os_id);
+0 −2
Original line number Diff line number Diff line
@@ -5,7 +5,6 @@ append_rtti_flag(OFF LSAN_CFLAGS)

set(LSAN_COMMON_SOURCES
  lsan_common.cpp
  lsan_common_fuchsia.cpp
  lsan_common_linux.cpp
  lsan_common_mac.cpp
  )
@@ -13,7 +12,6 @@ set(LSAN_COMMON_SOURCES
set(LSAN_SOURCES
  lsan.cpp
  lsan_allocator.cpp
  lsan_fuchsia.cpp
  lsan_interceptors.cpp
  lsan_linux.cpp
  lsan_mac.cpp
+12 −0
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@

#include "sanitizer_common/sanitizer_flags.h"
#include "sanitizer_common/sanitizer_flag_parser.h"
#include "sanitizer_common/sanitizer_stacktrace.h"
#include "lsan_allocator.h"
#include "lsan_common.h"
#include "lsan_thread.h"
@@ -86,6 +87,17 @@ static void InitializeFlags() {
  __sanitizer_set_report_path(common_flags()->log_path);
}

static void OnStackUnwind(const SignalContext &sig, const void *,
                          BufferedStackTrace *stack) {
  stack->Unwind(StackTrace::GetNextInstructionPc(sig.pc), sig.bp, sig.context,
                common_flags()->fast_unwind_on_fatal);
}

static void LsanOnDeadlySignal(int signo, void *siginfo, void *context) {
  HandleDeadlySignal(siginfo, context, GetCurrentThread(), &OnStackUnwind,
                     nullptr);
}

extern "C" void __lsan_init() {
  CHECK(!lsan_init_is_running);
  if (lsan_inited)
+0 −3
Original line number Diff line number Diff line
@@ -14,8 +14,6 @@
#include "lsan_thread.h"
#if SANITIZER_POSIX
#include "lsan_posix.h"
#elif SANITIZER_FUCHSIA
#include "lsan_fuchsia.h"
#endif
#include "sanitizer_common/sanitizer_flags.h"
#include "sanitizer_common/sanitizer_stacktrace.h"
@@ -38,7 +36,6 @@ namespace __lsan {

void InitializeInterceptors();
void ReplaceSystemMalloc();
void LsanOnDeadlySignal(int signo, void *siginfo, void *context);

#define ENSURE_LSAN_INITED do {   \
  CHECK(!lsan_init_is_running);   \
Loading