Path: blob/main/contrib/llvm-project/llvm/include/llvm-c/LLJITUtils.h
35233 views
/*===------- llvm-c/LLJITUtils.h - Advanced LLJIT features --------*- C -*-===*\1|* *|2|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|3|* 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|* This header declares the C interface for extra utilities to be used with *|10|* the LLJIT class from the llvm-c/LLJIT.h header. It requires to following *|11|* link libraries in addition to libLLVMOrcJIT.a: *|12|* - libLLVMOrcDebugging.a *|13|* *|14|* Many exotic languages can interoperate with C code but have a harder time *|15|* with C++ due to name mangling. So in addition to C, this interface enables *|16|* tools written in such languages. *|17|* *|18|* Note: This interface is experimental. It is *NOT* stable, and may be *|19|* changed without warning. Only C API usage documentation is *|20|* provided. See the C++ documentation for all higher level ORC API *|21|* details. *|22|* *|23\*===----------------------------------------------------------------------===*/2425#ifndef LLVM_C_LLJITUTILS_H26#define LLVM_C_LLJITUTILS_H2728#include "llvm-c/LLJIT.h"2930LLVM_C_EXTERN_C_BEGIN3132/**33* @defgroup LLVMCExecutionEngineLLJITUtils LLJIT Utilities34* @ingroup LLVMCExecutionEngineLLJIT35*36* @{37*/3839/**40* Install the plugin that submits debug objects to the executor. Executors must41* expose the llvm_orc_registerJITLoaderGDBWrapper symbol.42*/43LLVMErrorRef LLVMOrcLLJITEnableDebugSupport(LLVMOrcLLJITRef J);4445/**46* @}47*/4849LLVM_C_EXTERN_C_END5051#endif /* LLVM_C_LLJITUTILS_H */525354