[docs] Add LICENSE.txt to the root of the mono-repo
[llvm-project.git] / llvm / include / llvm-c / IRReader.h
blob905b84fa5a8693b3ce36bd82f731698821b324b9
1 /*===-- llvm-c/IRReader.h - IR Reader 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 IR Reader. *|
11 |* *|
12 \*===----------------------------------------------------------------------===*/
14 #ifndef LLVM_C_IRREADER_H
15 #define LLVM_C_IRREADER_H
17 #include "llvm-c/ExternC.h"
18 #include "llvm-c/Types.h"
20 LLVM_C_EXTERN_C_BEGIN
22 /**
23 * @defgroup LLVMCCoreIRReader IR Reader
24 * @ingroup LLVMCCore
26 * @{
29 /**
30 * Read LLVM IR from a memory buffer and convert it into an in-memory Module
31 * object. Returns 0 on success.
32 * Optionally returns a human-readable description of any errors that
33 * occurred during parsing IR. OutMessage must be disposed with
34 * LLVMDisposeMessage.
36 * @see llvm::ParseIR()
38 LLVMBool LLVMParseIRInContext(LLVMContextRef ContextRef,
39 LLVMMemoryBufferRef MemBuf, LLVMModuleRef *OutM,
40 char **OutMessage);
42 /**
43 * @}
46 LLVM_C_EXTERN_C_END
48 #endif