1 //===----------------------- OrcRTBootstrap.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 // OrcRTPrelinkImpl provides functions that should be linked into the executor 10 // to bootstrap common JIT functionality (e.g. memory allocation and memory 11 // access). 12 // 13 // Call rt_impl::addTo to add these functions to a bootstrap symbols map. 14 // 15 // FIXME: The functionality in this file should probably be moved to an ORC 16 // runtime bootstrap library in compiler-rt. 17 // 18 //===----------------------------------------------------------------------===// 19 20 #ifndef LIB_EXECUTIONENGINE_ORC_TARGETPROCESS_ORCRTBOOTSTRAP_H 21 #define LIB_EXECUTIONENGINE_ORC_TARGETPROCESS_ORCRTBOOTSTRAP_H 22 23 #include "llvm/ADT/StringMap.h" 24 #include "llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h" 25 26 namespace llvm { 27 namespace orc { 28 namespace rt_bootstrap { 29 30 void addTo(StringMap<ExecutorAddr> &M); 31 32 } // namespace rt_bootstrap 33 } // end namespace orc 34 } // end namespace llvm 35 36 #endif // LIB_EXECUTIONENGINE_ORC_TARGETPROCESS_ORCRTBOOTSTRAP_H 37