summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Object/MachOUniversal.cpp
diff options
context:
space:
mode:
authorKevin Enderby <enderby@apple.com>2016-12-16 22:54:02 +0000
committerKevin Enderby <enderby@apple.com>2016-12-16 22:54:02 +0000
commit59343a9429f67617e6a601767eda98dfc41e46bf (patch)
treea835619c7daf9fa49f700d6b2221bf517ac2ec44 /llvm/lib/Object/MachOUniversal.cpp
parent46225b193fd956545be97a83cecb4a3b6d3d6f17 (diff)
downloadbcm5719-llvm-59343a9429f67617e6a601767eda98dfc41e46bf.tar.gz
bcm5719-llvm-59343a9429f67617e6a601767eda98dfc41e46bf.zip
Fix a bugs with using some Mach-O command line flags like "-arch armv7m".
The Mach-O command line flag like "-arch armv7m" does not match the arch name part of its llvm Triple which is "thumbv7m-apple-darwin”. I think the best way to fix this is to have llvm::object::MachOObjectFile::getArchTriple() optionally return the name of the Mach-O arch flag that would be used with -arch that matches the CPUType and CPUSubType. Then change llvm::object::MachOUniversalBinary::ObjectForArch::getArchTypeName() to use that and change it to getArchFlagName() as the type name is really part of the Triple and the -arch flag name is a Mach-O thing for a specific Triple with a specific Mcpu value. rdar://29663637 llvm-svn: 290001
Diffstat (limited to 'llvm/lib/Object/MachOUniversal.cpp')
-rw-r--r--llvm/lib/Object/MachOUniversal.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Object/MachOUniversal.cpp b/llvm/lib/Object/MachOUniversal.cpp
index 7ddc427dede..309708e9b37 100644
--- a/llvm/lib/Object/MachOUniversal.cpp
+++ b/llvm/lib/Object/MachOUniversal.cpp
@@ -219,7 +219,7 @@ MachOUniversalBinary::getObjectForArch(StringRef ArchName) const {
object_error::arch_not_found);
for (auto &Obj : objects())
- if (Obj.getArchTypeName() == ArchName)
+ if (Obj.getArchFlagName() == ArchName)
return Obj.getAsObjectFile();
return make_error<GenericBinaryError>("fat file does not "
"contain " +
OpenPOWER on IntegriCloud