//===-LTOModule.h - LLVM Link Time Optimizer ------------------------------===// // // 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 // //===----------------------------------------------------------------------===// // // This file declares the LTOModule class. // //===----------------------------------------------------------------------===// #ifndef LLVM_LTO_LEGACY_LTOMODULE_H #define LLVM_LTO_LEGACY_LTOMODULE_H #include "llvm-c/lto.h" #include "llvm/ADT/StringMap.h" #include "llvm/ADT/StringSet.h" #include "llvm/IR/Module.h" #include "llvm/LTO/LTO.h" #include "llvm/Object/IRObjectFile.h" #include "llvm/Object/ModuleSymbolTable.h" #include "llvm/Target/TargetMachine.h" #include <string> #include <vector> // Forward references to llvm classes. namespace llvm { class Function; class GlobalValue; class MemoryBuffer; class TargetOptions; class Value; //===----------------------------------------------------------------------===// /// C++ class which implements the opaque lto_module_t type. /// struct LTOModule { … }; } #endif