aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikhail Glushenkov <foldr@codedgers.com>2010-02-23 09:05:21 +0000
committerMikhail Glushenkov <foldr@codedgers.com>2010-02-23 09:05:21 +0000
commitd14fb0f519ea9ae188a08406547bfed01ceecf67 (patch)
tree4dd106425ca0b365f805d32de01ea1f22e8d2742
parent0708f616e7de8a3e5057338a338479de6b1ec6cf (diff)
downloadexternal_llvm-d14fb0f519ea9ae188a08406547bfed01ceecf67.zip
external_llvm-d14fb0f519ea9ae188a08406547bfed01ceecf67.tar.gz
external_llvm-d14fb0f519ea9ae188a08406547bfed01ceecf67.tar.bz2
Input files with empty suffixes must be passed to linker.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96927 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/CompilerDriver/CompilationGraph.cpp3
-rw-r--r--tools/llvmc/plugins/Base/Base.td.in2
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/CompilerDriver/CompilationGraph.cpp b/lib/CompilerDriver/CompilationGraph.cpp
index a36d3fb..7d1c7fe 100644
--- a/lib/CompilerDriver/CompilationGraph.cpp
+++ b/lib/CompilerDriver/CompilationGraph.cpp
@@ -34,7 +34,8 @@ namespace llvmc {
const std::string& LanguageMap::GetLanguage(const sys::Path& File) const {
StringRef suf = File.getSuffix();
- LanguageMap::const_iterator Lang = this->find(suf);
+ LanguageMap::const_iterator Lang =
+ this->find(suf.empty() ? "*empty*" : suf);
if (Lang == this->end())
throw std::runtime_error("File '" + File.str() +
"' has unknown suffix '" + suf.str() + '\'');
diff --git a/tools/llvmc/plugins/Base/Base.td.in b/tools/llvmc/plugins/Base/Base.td.in
index d2c1f0c..6ed4749 100644
--- a/tools/llvmc/plugins/Base/Base.td.in
+++ b/tools/llvmc/plugins/Base/Base.td.in
@@ -311,7 +311,7 @@ def LanguageMap : LanguageMap<
LangToSuffixes<"assembler-with-cpp", ["S"]>,
LangToSuffixes<"llvm-assembler", ["ll"]>,
LangToSuffixes<"llvm-bitcode", ["bc"]>,
- LangToSuffixes<"object-code", ["o"]>,
+ LangToSuffixes<"object-code", ["o", "*empty*"]>,
LangToSuffixes<"executable", ["out"]>
]>;