1//===- coff_platform.h -------------------------------------------*- 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// ORC Runtime support for dynamic loading features on COFF-based platforms.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef ORC_RT_COFF_PLATFORM_H
14#define ORC_RT_COFF_PLATFORM_H
15
16#include "common.h"
17#include "executor_address.h"
18
19// dlfcn functions.
20ORC_RT_INTERFACE const char *__orc_rt_coff_jit_dlerror();
21ORC_RT_INTERFACE void *__orc_rt_coff_jit_dlopen(const char *path, int mode);
22ORC_RT_INTERFACE int __orc_rt_coff_jit_dlclose(void *header);
23ORC_RT_INTERFACE void *__orc_rt_coff_jit_dlsym(void *header,
24 const char *symbol);
25
26namespace __orc_rt {
27namespace coff {
28
29enum dlopen_mode : int {
30 ORC_RT_RTLD_LAZY = 0x1,
31 ORC_RT_RTLD_NOW = 0x2,
32 ORC_RT_RTLD_LOCAL = 0x4,
33 ORC_RT_RTLD_GLOBAL = 0x8
34};
35
36} // end namespace coff
37} // end namespace __orc_rt
38
39#endif
40

source code of compiler-rt/lib/orc/coff_platform.h