xref: /openbsd-src/gnu/llvm/compiler-rt/lib/lsan/lsan_fuchsia.h (revision d89ec533011f513df1010f142a111086a0785f09)
11f9cb04fSpatrick //=-- lsan_fuchsia.h ---------------------------------------------------===//
21f9cb04fSpatrick //
31f9cb04fSpatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
41f9cb04fSpatrick // See https://llvm.org/LICENSE.txt for license information.
51f9cb04fSpatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
61f9cb04fSpatrick //
71f9cb04fSpatrick //===---------------------------------------------------------------------===//
81f9cb04fSpatrick //
91f9cb04fSpatrick // This file is a part of LeakSanitizer.
101f9cb04fSpatrick // Standalone LSan RTL code specific to Fuchsia.
111f9cb04fSpatrick //
121f9cb04fSpatrick //===---------------------------------------------------------------------===//
131f9cb04fSpatrick 
141f9cb04fSpatrick #ifndef LSAN_FUCHSIA_H
151f9cb04fSpatrick #define LSAN_FUCHSIA_H
161f9cb04fSpatrick 
171f9cb04fSpatrick #include "lsan_thread.h"
181f9cb04fSpatrick #include "sanitizer_common/sanitizer_platform.h"
191f9cb04fSpatrick 
201f9cb04fSpatrick #if !SANITIZER_FUCHSIA
211f9cb04fSpatrick #error "lsan_fuchsia.h is used only on Fuchsia systems (SANITIZER_FUCHSIA)"
221f9cb04fSpatrick #endif
231f9cb04fSpatrick 
241f9cb04fSpatrick namespace __lsan {
251f9cb04fSpatrick 
26*d89ec533Spatrick class ThreadContext final : public ThreadContextLsanBase {
271f9cb04fSpatrick  public:
281f9cb04fSpatrick   explicit ThreadContext(int tid);
291f9cb04fSpatrick   void OnCreated(void *arg) override;
301f9cb04fSpatrick   void OnStarted(void *arg) override;
311f9cb04fSpatrick };
321f9cb04fSpatrick 
331f9cb04fSpatrick }  // namespace __lsan
341f9cb04fSpatrick 
351f9cb04fSpatrick #endif  // LSAN_FUCHSIA_H
36