Subversion Repositories QNX 8.QNX8 LLVM/Clang compiler suite

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
14 pmbaty 1
//===------- COFF.h - Generic JIT link function for COFF ------*- C++ -*-===//
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
// Generic jit-link functions for COFF.
10
//
11
//===----------------------------------------------------------------------===//
12
 
13
#ifndef LLVM_EXECUTIONENGINE_JITLINK_COFF_H
14
#define LLVM_EXECUTIONENGINE_JITLINK_COFF_H
15
 
16
#include "llvm/ExecutionEngine/JITLink/JITLink.h"
17
 
18
namespace llvm {
19
namespace jitlink {
20
 
21
/// Create a LinkGraph from an COFF relocatable object.
22
///
23
/// Note: The graph does not take ownership of the underlying buffer, nor copy
24
/// its contents. The caller is responsible for ensuring that the object buffer
25
/// outlives the graph.
26
Expected<std::unique_ptr<LinkGraph>>
27
createLinkGraphFromCOFFObject(MemoryBufferRef ObjectBuffer);
28
 
29
/// Link the given graph.
30
///
31
/// Uses conservative defaults for GOT and stub handling based on the target
32
/// platform.
33
void link_COFF(std::unique_ptr<LinkGraph> G,
34
               std::unique_ptr<JITLinkContext> Ctx);
35
 
36
} // end namespace jitlink
37
} // end namespace llvm
38
 
39
#endif // LLVM_EXECUTIONENGINE_JITLINK_COFF_H