summaryrefslogtreecommitdiffstats
path: root/llvm/tools
diff options
context:
space:
mode:
authorFrederic Riss <friss@apple.com>2016-05-09 06:01:12 +0000
committerFrederic Riss <friss@apple.com>2016-05-09 06:01:12 +0000
commit5af2c005eb9cf087ac89bfc7808ba9dbc904912e (patch)
treeccc0d178623ebf992dcf309efbde3086c41c779e /llvm/tools
parent9ed80154ab9db7cc39cb0a51cc6049f154f0970c (diff)
downloadbcm5719-llvm-5af2c005eb9cf087ac89bfc7808ba9dbc904912e.tar.gz
bcm5719-llvm-5af2c005eb9cf087ac89bfc7808ba9dbc904912e.zip
[dsymutil] Fix -arch option for thumb variants.
r267249 removed the dual ARM/Thumb interface from MachOObjectFile, simplifying llvm-dsymutil's code. This unfortunately also regressed llvm-dsymutil's ability to select thumb slices, because the simplified code was also dealing with the discrepency between the slice arch (eg. armv7m) and the triple arch name (eg. thumbv7m). llvm-svn: 268894
Diffstat (limited to 'llvm/tools')
-rw-r--r--llvm/tools/dsymutil/MachODebugMapParser.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/tools/dsymutil/MachODebugMapParser.cpp b/llvm/tools/dsymutil/MachODebugMapParser.cpp
index 476ac80fba2..22215200ed5 100644
--- a/llvm/tools/dsymutil/MachODebugMapParser.cpp
+++ b/llvm/tools/dsymutil/MachODebugMapParser.cpp
@@ -294,7 +294,11 @@ static bool shouldLinkArch(SmallVectorImpl<StringRef> &Archs, StringRef Arch) {
std::find(Archs.begin(), Archs.end(), "arm") != Archs.end())
return true;
- return std::find(Archs.begin(), Archs.end(), Arch) != Archs.end();
+ SmallString<16> ArchName = Arch;
+ if (Arch.startswith("thumb"))
+ ArchName = ("arm" + Arch.substr(5)).str();
+
+ return std::find(Archs.begin(), Archs.end(), ArchName) != Archs.end();
}
bool MachODebugMapParser::dumpStab() {
OpenPOWER on IntegriCloud