//===----- LLJITDumpObjects.cpp - How to dump JIT'd objects with LLJIT ----===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /// /// \file /// /// This example demonstrates how to use LLJIT to: /// - Add absolute symbol definitions. /// - Run static constructors for a JITDylib. /// - Run static destructors for a JITDylib. /// /// This example does not call any functions (e.g. main or equivalent) between /// running the static constructors and running the static destructors. /// //===----------------------------------------------------------------------===// #include "llvm/ADT/StringMap.h" #include "llvm/ExecutionEngine/Orc/LLJIT.h" #include "llvm/Support/InitLLVM.h" #include "llvm/Support/TargetSelect.h" #include "llvm/Support/raw_ostream.h" #include "../ExampleModules.h" usingnamespacellvm; usingnamespacellvm::orc; ExitOnError ExitOnErr; const llvm::StringRef ModuleWithInitializer = …; int main(int argc, char *argv[]) { … }