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/Linker.h
35233 views
1
/*===-- llvm-c/Linker.h - Module Linker C Interface -------------*- 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 file defines the C interface to the module/file/archive linker. *|
11
|* *|
12
\*===----------------------------------------------------------------------===*/
13
14
#ifndef LLVM_C_LINKER_H
15
#define LLVM_C_LINKER_H
16
17
#include "llvm-c/ExternC.h"
18
#include "llvm-c/Types.h"
19
20
LLVM_C_EXTERN_C_BEGIN
21
22
/**
23
* @defgroup LLVMCCoreLinker Linker
24
* @ingroup LLVMCCore
25
*
26
* @{
27
*/
28
29
/* This enum is provided for backwards-compatibility only. It has no effect. */
30
typedef enum {
31
LLVMLinkerDestroySource = 0, /* This is the default behavior. */
32
LLVMLinkerPreserveSource_Removed = 1 /* This option has been deprecated and
33
should not be used. */
34
} LLVMLinkerMode;
35
36
/* Links the source module into the destination module. The source module is
37
* destroyed.
38
* The return value is true if an error occurred, false otherwise.
39
* Use the diagnostic handler to get any diagnostic message.
40
*/
41
LLVMBool LLVMLinkModules2(LLVMModuleRef Dest, LLVMModuleRef Src);
42
43
LLVM_C_EXTERN_C_END
44
45
/**
46
* @}
47
*/
48
49
#endif
50
51