diff --git a/lib/Object/MachOObjectFile.cpp b/lib/Object/MachOObjectFile.cpp index e2efa3afdf2..65571dc5461 100644 --- a/lib/Object/MachOObjectFile.cpp +++ b/lib/Object/MachOObjectFile.cpp @@ -1404,7 +1404,7 @@ Triple MachOObjectFile::getArch(StringRef ArchFlag) { return Triple("armv7em-apple-darwin"); else if (ArchFlag == "armv7k") return Triple("armv7k-apple-darwin"); - else if (ArchFlag == "armv7k") + else if (ArchFlag == "armv7m") return Triple("armv7m-apple-darwin"); else if (ArchFlag == "armv7s") return Triple("armv7s-apple-darwin"); diff --git a/test/Object/nm-universal-binary.test b/test/Object/nm-universal-binary.test index 732445e778b..0cced1829c3 100644 --- a/test/Object/nm-universal-binary.test +++ b/test/Object/nm-universal-binary.test @@ -2,6 +2,10 @@ RUN: llvm-nm -arch all %p/Inputs/macho-universal.x86_64.i386 \ RUN: | FileCheck %s -check-prefix CHECK-OBJ RUN: llvm-nm -arch x86_64 %p/Inputs/macho-universal.x86_64.i386 \ RUN: | FileCheck %s -check-prefix CHECK-OBJ-x86_64 +RUN: not llvm-nm -arch armv7m %p/Inputs/macho-universal.x86_64.i386 2>&1 \ +RUN: | FileCheck %s -check-prefix CHECK-OBJ-armv7m +RUN: not llvm-nm -arch foobar %p/Inputs/macho-universal.x86_64.i386 2>&1 \ +RUN: | FileCheck %s -check-prefix CHECK-OBJ-foobar RUN: llvm-nm -arch all %p/Inputs/macho-universal-archive.x86_64.i386 \ RUN: | FileCheck %s -check-prefix CHECK-AR RUN: llvm-nm -arch i386 %p/Inputs/macho-universal-archive.x86_64.i386 \ @@ -18,6 +22,12 @@ CHECK-OBJ-x86_64: 0000000100000000 T __mh_execute_header CHECK-OBJ-x86_64: 0000000100000f60 T _main CHECK-OBJ-x86_64: U dyld_stub_binder +CHECK-OBJ-armv7m-NOT: Unknown architecture named +CHECK-OBJ-armv7m: does not contain architecture + +CHECK-OBJ-foobar: Unknown architecture named +CHECK-OBJ-foobar: does not contain architecture + CHECK-AR: macho-universal-archive.x86_64.i386(hello.o) (for architecture x86_64): CHECK-AR: 0000000000000068 s EH_frame0 CHECK-AR: 000000000000003b s L_.str