Provide a fast "get me the target triple from the module" API. This can

drastically reduce the linking time during LTO.

Patch by Shantonu Sen!

llvm-svn: 115728
This commit is contained in:
Bill Wendling
2010-10-06 01:22:42 +00:00
parent 1fc81e90f7
commit 0198ce06fc
4 changed files with 142 additions and 10 deletions

View File

@@ -212,6 +212,10 @@ public:
/// @brief Main interface to parsing a bitcode buffer.
/// @returns true if an error occurred.
bool ParseBitcodeInto(Module *M);
/// @brief Cheap mechanism to just extract module triple
/// @returns true if an error occurred.
bool ParseTriple(std::string &Triple);
private:
const Type *getTypeByID(unsigned ID, bool isTypeTable = false);
Value *getFnValueByID(unsigned ID, const Type *Ty) {
@@ -270,6 +274,7 @@ private:
bool ResolveGlobalAndAliasInits();
bool ParseMetadata();
bool ParseMetadataAttachment();
bool ParseModuleTriple(std::string &Triple);
};
} // End llvm namespace