aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2006-09-06 20:16:28 +0000
committerDevang Patel <dpatel@apple.com>2006-09-06 20:16:28 +0000
commita291a68161bd37448404dc10c4815d4420cb2d30 (patch)
treef576cb73144c39d9f31cd064d4e9620c2bb8abe9
parent7c95ad4fb02bd592d7923f2bcc1cbdb8b62de553 (diff)
Add getTargetTriple() that linker can use to query target architecture.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30132 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/LinkTimeOptimizer.h1
-rw-r--r--tools/lto/lto.cpp11
2 files changed, 12 insertions, 0 deletions
diff --git a/include/llvm/LinkTimeOptimizer.h b/include/llvm/LinkTimeOptimizer.h
index 76a7af66da..006f1171c8 100644
--- a/include/llvm/LinkTimeOptimizer.h
+++ b/include/llvm/LinkTimeOptimizer.h
@@ -92,6 +92,7 @@ namespace llvm {
enum LTOStatus optimizeModules(const std::string &OutputFilename,
std::vector<const char*> &exportList,
std::string &targetTriple);
+ void getTargetTriple(const std::string &InputFilename, std::string &targetTriple);
private:
Module *getModule (const std::string &InputFilename);
diff --git a/tools/lto/lto.cpp b/tools/lto/lto.cpp
index 96b449e28c..14cfc8efaf 100644
--- a/tools/lto/lto.cpp
+++ b/tools/lto/lto.cpp
@@ -116,6 +116,17 @@ LinkTimeOptimizer::getModule(const std::string &InputFilename)
return m;
}
+/// InputFilename is a LLVM bytecode file. Reade this bytecode file and
+/// set corresponding target triplet string.
+void
+LinkTimeOptimizer::getTargetTriple(const std::string &InputFilename,
+ std::string &targetTriple)
+{
+ Module *m = getModule(InputFilename);
+ if (m)
+ targetTriple = m->getTargetTriple();
+}
+
/// InputFilename is a LLVM bytecode file. Read it using bytecode reader.
/// Collect global functions and symbol names in symbols vector.
/// Collect external references in references vector.