[compiler-rt] 98fe39d - [GWP-ASan] Stub out backtrace/signal functions on Fuchsia

Kostya Kortchinsky via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 2 13:50:05 PST 2020


Author: Kostya Kortchinsky
Date: 2020-11-02T13:49:50-08:00
New Revision: 98fe39df939ee6f1fd20b75edcc9fe0860b52dba

URL: https://github.com/llvm/llvm-project/commit/98fe39df939ee6f1fd20b75edcc9fe0860b52dba
DIFF: https://github.com/llvm/llvm-project/commit/98fe39df939ee6f1fd20b75edcc9fe0860b52dba.diff

LOG: [GWP-ASan] Stub out backtrace/signal functions on Fuchsia

The initial version of GWP-ASan on Fuchsia doesn't support crash and
signal handlers, so this just adds empty stubs to be able to compile
the project on the platform.

Differential Revision: https://reviews.llvm.org/D90537

Added: 
    compiler-rt/lib/gwp_asan/optional/backtrace_fuchsia.cpp
    compiler-rt/lib/gwp_asan/optional/segv_handler_fuchsia.cpp

Modified: 
    

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/gwp_asan/optional/backtrace_fuchsia.cpp b/compiler-rt/lib/gwp_asan/optional/backtrace_fuchsia.cpp
new file mode 100644
index 000000000000..ac7ed6c709d7
--- /dev/null
+++ b/compiler-rt/lib/gwp_asan/optional/backtrace_fuchsia.cpp
@@ -0,0 +1,22 @@
+//===-- backtrace_fuchsia.cpp -----------------------------------*- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "gwp_asan/optional/backtrace.h"
+
+// GWP-ASan on Fuchsia doesn't currently support backtraces.
+
+namespace gwp_asan {
+namespace options {
+Backtrace_t getBacktraceFunction() { return nullptr; }
+crash_handler::PrintBacktrace_t getPrintBacktraceFunction() { return nullptr; }
+} // namespace options
+
+namespace crash_handler {
+SegvBacktrace_t getSegvBacktraceFunction() { return nullptr; }
+} // namespace crash_handler
+} // namespace gwp_asan

diff  --git a/compiler-rt/lib/gwp_asan/optional/segv_handler_fuchsia.cpp b/compiler-rt/lib/gwp_asan/optional/segv_handler_fuchsia.cpp
new file mode 100644
index 000000000000..ec26afae6c08
--- /dev/null
+++ b/compiler-rt/lib/gwp_asan/optional/segv_handler_fuchsia.cpp
@@ -0,0 +1,22 @@
+//===-- segv_handler_fuchsia.cpp --------------------------------*- C++ -*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "gwp_asan/optional/segv_handler.h"
+
+// GWP-ASan on Fuchsia doesn't currently support signal handlers.
+
+namespace gwp_asan {
+namespace crash_handler {
+void installSignalHandlers(gwp_asan::GuardedPoolAllocator * /* GPA */,
+                           Printf_t /* Printf */,
+                           PrintBacktrace_t /* PrintBacktrace */,
+                           SegvBacktrace_t /* SegvBacktrace */) {}
+
+void uninstallSignalHandlers() {}
+} // namespace crash_handler
+} // namespace gwp_asan


        


More information about the llvm-commits mailing list