1 //===- Debug.cpp - C Interface for MLIR/LLVM Debugging Functions ----------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #include "mlir-c/Debug.h" 10 #include "mlir-c/Support.h" 11 12 #include "mlir/CAPI/Support.h" 13 14 #include "llvm/Support/Debug.h" 15 mlirEnableGlobalDebug(bool enable)16void mlirEnableGlobalDebug(bool enable) { llvm::DebugFlag = enable; } 17 mlirIsGlobalDebugEnabled()18bool mlirIsGlobalDebugEnabled() { return llvm::DebugFlag; } 19 mlirSetGlobalDebugType(const char * type)20void mlirSetGlobalDebugType(const char *type) { 21 // Depending on the NDEBUG flag, this name can be either a function or a macro 22 // that expands to something that isn't a funciton call, so we cannot 23 // explicitly prefix it with `llvm::` or declare `using` it. 24 using namespace llvm; 25 setCurrentDebugType(type); 26 } 27 mlirSetGlobalDebugTypes(const char ** types,intptr_t n)28void mlirSetGlobalDebugTypes(const char **types, intptr_t n) { 29 using namespace llvm; 30 setCurrentDebugTypes(types, n); 31 } 32 mlirIsCurrentDebugType(const char * type)33bool mlirIsCurrentDebugType(const char *type) { 34 using namespace llvm; 35 return isCurrentDebugType(type); 36 } 37