Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/contrib/llvm-project/llvm/include/llvm-c/LLJITUtils.h
35233 views
1
/*===------- llvm-c/LLJITUtils.h - Advanced LLJIT features --------*- C -*-===*\
2
|* *|
3
|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|
4
|* Exceptions. *|
5
|* See https://llvm.org/LICENSE.txt for license information. *|
6
|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|
7
|* *|
8
|*===----------------------------------------------------------------------===*|
9
|* *|
10
|* This header declares the C interface for extra utilities to be used with *|
11
|* the LLJIT class from the llvm-c/LLJIT.h header. It requires to following *|
12
|* link libraries in addition to libLLVMOrcJIT.a: *|
13
|* - libLLVMOrcDebugging.a *|
14
|* *|
15
|* Many exotic languages can interoperate with C code but have a harder time *|
16
|* with C++ due to name mangling. So in addition to C, this interface enables *|
17
|* tools written in such languages. *|
18
|* *|
19
|* Note: This interface is experimental. It is *NOT* stable, and may be *|
20
|* changed without warning. Only C API usage documentation is *|
21
|* provided. See the C++ documentation for all higher level ORC API *|
22
|* details. *|
23
|* *|
24
\*===----------------------------------------------------------------------===*/
25
26
#ifndef LLVM_C_LLJITUTILS_H
27
#define LLVM_C_LLJITUTILS_H
28
29
#include "llvm-c/LLJIT.h"
30
31
LLVM_C_EXTERN_C_BEGIN
32
33
/**
34
* @defgroup LLVMCExecutionEngineLLJITUtils LLJIT Utilities
35
* @ingroup LLVMCExecutionEngineLLJIT
36
*
37
* @{
38
*/
39
40
/**
41
* Install the plugin that submits debug objects to the executor. Executors must
42
* expose the llvm_orc_registerJITLoaderGDBWrapper symbol.
43
*/
44
LLVMErrorRef LLVMOrcLLJITEnableDebugSupport(LLVMOrcLLJITRef J);
45
46
/**
47
* @}
48
*/
49
50
LLVM_C_EXTERN_C_END
51
52
#endif /* LLVM_C_LLJITUTILS_H */
53
54