summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-symbolizer
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2013-07-01 09:51:42 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2013-07-01 09:51:42 +0000
commit234acdfdc873eb59448f7df447f7d114bb4b085c (patch)
tree92e3b3c50d6871ccf01ea77725f38876326bdecc /llvm/tools/llvm-symbolizer
parentbafa6b711a12ccc96a0d8b6c3a33413814f08510 (diff)
downloadbcm5719-llvm-234acdfdc873eb59448f7df447f7d114bb4b085c.tar.gz
bcm5719-llvm-234acdfdc873eb59448f7df447f7d114bb4b085c.zip
llvm-symbolizer: Recognize a drive letter on win32. Then "REQUIRES: shell" can be removed.
FIXME: Could we use llvm::sys::Path here? llvm-svn: 185322
Diffstat (limited to 'llvm/tools/llvm-symbolizer')
-rw-r--r--llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp b/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp
index 57f34c24729..1945d689dee 100644
--- a/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp
+++ b/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp
@@ -279,6 +279,11 @@ LLVMSymbolizer::getOrCreateModuleInfo(const std::string &ModuleName) {
std::string BinaryName = ModuleName;
std::string ArchName = Opts.DefaultArch;
size_t ColonPos = ModuleName.find(':');
+#if defined(_WIN32)
+ // Recognize a drive letter on win32.
+ if (ColonPos == 1 && isalpha(ModuleName[0]))
+ ColonPos = ModuleName.find(':', 2);
+#endif
if (ColonPos != std::string::npos) {
BinaryName = ModuleName.substr(0, ColonPos);
ArchName = ModuleName.substr(ColonPos + 1);
OpenPOWER on IntegriCloud