class GlobalValue;
class Value;
class Function;
- class LLVMContext;
}
//
// C++ class which implements the opaque lto_module_t
//
-class LTOModule {
-public:
+struct LTOModule {
static bool isBitcodeFile(const void* mem, size_t length);
static bool isBitcodeFile(const char* path);
const char* triplePrefix);
static LTOModule* makeLTOModule(const char* path,
- const llvm::LLVMContext& Context,
std::string& errMsg);
static LTOModule* makeLTOModule(const void* mem, size_t length,
- const llvm::LLVMContext& Context,
std::string& errMsg);
const char* getTargetTriple();
+ void setTargetTriple(const char*);
uint32_t getSymbolCount();
lto_symbol_attributes getSymbolAttributes(uint32_t index);
const char* getSymbolName(uint32_t index);
const char* triplePrefix);
static LTOModule* makeLTOModule(llvm::MemoryBuffer* buffer,
- const llvm::LLVMContext& Context,
std::string& errMsg);
static llvm::MemoryBuffer* makeBuffer(const void* mem, size_t length);
llvm::StringMap<NameAndAttributes> _undefines;
};
-extern std::string getFeatureString(const char *TargetTriple);
-
#endif // LTO_MODULE_H