//===- debug.h - Debugging output utilities ---------------------*- 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 // //===----------------------------------------------------------------------===// // // This file is a part of the ORC runtime support library. // //===----------------------------------------------------------------------===// #ifndef ORC_RT_DEBUG_H #define ORC_RT_DEBUG_H #include <atomic> #ifndef NDEBUG namespace orc_rt { extern std::atomic<const char *> DebugTypes; extern char DebugTypesAll; extern char DebugTypesNone; const char *initializeDebug(); bool debugTypeEnabled(const char *Type, const char *Types); void printdbg(const char *format, ...); } // namespace orc_rt #define ORC_RT_DEBUG_WITH_TYPE … #else #define ORC_RT_DEBUG_WITH_TYPE(TYPE, X) … #endif // !NDEBUG #define ORC_RT_DEBUG(X) … #endif // ORC_RT_DEBUG_H