#ifndef LLVM_EXECUTIONENGINE_ORC_ELFNIXPLATFORM_H
#define LLVM_EXECUTIONENGINE_ORC_ELFNIXPLATFORM_H
#include "llvm/ADT/StringRef.h"
#include "llvm/ExecutionEngine/Orc/Core.h"
#include "llvm/ExecutionEngine/Orc/ExecutorProcessControl.h"
#include "llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h"
#include "llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h"
#include <future>
#include <thread>
#include <vector>
namespace llvm {
namespace orc {
struct ELFPerObjectSectionsToRegister { … };
struct ELFNixJITDylibInitializers { … };
class ELFNixJITDylibDeinitializers { … };
ELFNixJITDylibInitializerSequence;
ELFNixJITDylibDeinitializerSequence;
class ELFNixPlatform : public Platform { … };
namespace shared {
SPSELFPerObjectSectionsToRegister;
template <>
class SPSSerializationTraits<SPSELFPerObjectSectionsToRegister,
ELFPerObjectSectionsToRegister> { … };
SPSNamedExecutorAddrRangeSequenceMap;
SPSELFNixJITDylibInitializers;
SPSELFNixJITDylibInitializerSequence;
template <>
class SPSSerializationTraits<SPSELFNixJITDylibInitializers,
ELFNixJITDylibInitializers> { … };
SPSELFJITDylibDeinitializers;
SPSELFJITDylibDeinitializerSequence;
template <>
class SPSSerializationTraits<SPSELFJITDylibDeinitializers,
ELFNixJITDylibDeinitializers> { … };
}
}
}
#endif