43 struct NameAndAttributes {
52 std::vector<NameAndAttributes> _symbols;
57 std::vector<const char*> _asm_undefines;
74 const char *triplePrefix);
76 const char *triplePrefix);
112 return _symbols.size();
118 if (index < _symbols.size())
125 if (index < _symbols.size())
126 return _symbols[index].name;
135 return _asm_undefines;
141 bool parseSymbols(std::string &errMsg);
158 bool addAsmGlobalSymbols(std::string &errMsg);
166 void addAsmGlobalSymbolUndef(
const char *);
179 bool objcClassNameFromExpression(
const llvm::Constant* c, std::string &name);
184 const char *triplePrefix);
190 std::string &errMsg);
196 #endif // LTO_MODULE_H
The main container class for the LLVM Intermediate Representation.
const char * getTargetTriple()
getTargetTriple - Return the Module's target triple.
static bool isBitcodeFileForTarget(const void *mem, size_t length, const char *triplePrefix)
llvm::Module * getLLVVMModule()
getLLVVMModule - Return the Module.
const std::string & getTargetTriple() const
static bool isBitcodeFile(const void *mem, size_t length)
LLVM Constant Representation.
const std::vector< const char * > & getAsmUndefinedRefs()
getAsmUndefinedRefs -
void setTargetTriple(const char *triple)
setTargetTriple - Set the Module's target triple.
const char * getSymbolName(uint32_t index)
getSymbolName - Get the name of the symbol at the specified index.
Deduce function attributes
void setTargetTriple(StringRef T)
Set the target triple.
lto_symbol_attributes getSymbolAttributes(uint32_t index)
static LTOModule * makeLTOModule(const char *path, llvm::TargetOptions options, std::string &errMsg)
uint32_t getSymbolCount()
getSymbolCount - Get the number of symbols