diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2013-07-01 09:51:42 +0000 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2013-07-01 09:51:42 +0000 |
commit | 234acdfdc873eb59448f7df447f7d114bb4b085c (patch) | |
tree | 92e3b3c50d6871ccf01ea77725f38876326bdecc /llvm | |
parent | bafa6b711a12ccc96a0d8b6c3a33413814f08510 (diff) | |
download | bcm5719-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')
-rw-r--r-- | llvm/test/DebugInfo/llvm-symbolizer.test | 2 | ||||
-rw-r--r-- | llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/llvm/test/DebugInfo/llvm-symbolizer.test b/llvm/test/DebugInfo/llvm-symbolizer.test index 11ba6642837..4dc369948fd 100644 --- a/llvm/test/DebugInfo/llvm-symbolizer.test +++ b/llvm/test/DebugInfo/llvm-symbolizer.test @@ -10,8 +10,6 @@ RUN: echo "%p/Inputs/macho-universal:x86_64 0x100000f05" >> %t.input RUN: llvm-symbolizer --functions --inlining --demangle=false \ RUN: --default-arch=i386 < %t.input | FileCheck %s -REQUIRES: shell - CHECK: main CHECK-NEXT: /tmp/dbginfo{{[/\\]}}dwarfdump-test.cc:16 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); |