19caa6b5bSFangrui SongRUN: llvm-nm --arch=all %p/Inputs/macho-universal.x86_64.i386 \
2e858a653SKevin EnderbyRUN:         | FileCheck %s -check-prefix CHECK-OBJ
39caa6b5bSFangrui SongRUN: llvm-nm --arch=all %p/Inputs/macho-universal64.x86_64.i386 \
4eb6d110cSKevin EnderbyRUN:         | FileCheck %s -check-prefix CHECK-64-OBJ
59caa6b5bSFangrui SongRUN: llvm-nm --arch=x86_64 %p/Inputs/macho-universal.x86_64.i386 \
64c8dfe4dSKevin EnderbyRUN:         | FileCheck %s -check-prefix CHECK-OBJ-x86_64
79caa6b5bSFangrui SongRUN: not llvm-nm --arch=armv7m %p/Inputs/macho-universal.x86_64.i386 2>&1 \
8cae3b831SFangrui SongRUN:         | FileCheck %s --check-prefix=CHECK-OBJ-armv7m --implicit-check-not=error:
99caa6b5bSFangrui SongRUN: not llvm-nm --arch=foobar %p/Inputs/macho-universal.x86_64.i386 2>&1 \
10cae3b831SFangrui SongRUN:         | FileCheck %s --check-prefix=CHECK-OBJ-foobar --implicit-check-not=error:
119caa6b5bSFangrui SongRUN: llvm-nm --arch=all %p/Inputs/macho-universal-archive.x86_64.i386 \
12e858a653SKevin EnderbyRUN:         | FileCheck %s -check-prefix CHECK-AR
139caa6b5bSFangrui SongRUN: llvm-nm --arch=all %p/Inputs/macho-universal64-archive.x86_64.i386 \
14eb6d110cSKevin EnderbyRUN:         | FileCheck %s -check-prefix CHECK-64-AR
159caa6b5bSFangrui SongRUN: llvm-nm --arch=i386 %p/Inputs/macho-universal-archive.x86_64.i386 \
164c8dfe4dSKevin EnderbyRUN:         | FileCheck %s -check-prefix CHECK-AR-i386
179caa6b5bSFangrui SongRUN: llvm-nm -o --arch=all %p/Inputs/macho-universal-archive.x86_64.i386 \
1808e1bbd6SKevin EnderbyRUN:         | FileCheck %s -check-prefix CHECK-AR-o
19e6388e62SAlexey Samsonov
201983fcf8SKevin EnderbyCHECK-OBJ: macho-universal.x86_64.i386 (for architecture x86_64):
21e858a653SKevin EnderbyCHECK-OBJ: 0000000100000f60 T _main
221983fcf8SKevin EnderbyCHECK-OBJ: macho-universal.x86_64.i386 (for architecture i386):
23e858a653SKevin EnderbyCHECK-OBJ: 00001fa0 T _main
24e858a653SKevin Enderby
25eb6d110cSKevin EnderbyCHECK-64-OBJ: macho-universal64.x86_64.i386 (for architecture x86_64):
26eb6d110cSKevin EnderbyCHECK-64-OBJ: 0000000100000f60 T _main
27eb6d110cSKevin EnderbyCHECK-64-OBJ: macho-universal64.x86_64.i386 (for architecture i386):
28eb6d110cSKevin EnderbyCHECK-64-OBJ: 00001fa0 T _main
29eb6d110cSKevin Enderby
304c8dfe4dSKevin EnderbyCHECK-OBJ-x86_64: 0000000100000000 T __mh_execute_header
314c8dfe4dSKevin EnderbyCHECK-OBJ-x86_64: 0000000100000f60 T _main
324c8dfe4dSKevin EnderbyCHECK-OBJ-x86_64:                  U dyld_stub_binder
334c8dfe4dSKevin Enderby
34cae3b831SFangrui SongCHECK-OBJ-armv7m: error: file: {{.*}} does not contain architecture
3540f5446dSRafael Espindola
36cae3b831SFangrui SongCHECK-OBJ-foobar: error: for the --arch option: Unknown architecture named 'foobar'
3740f5446dSRafael Espindola
38*bef2592cSzhijianCHECK-AR:       {{^$}}
39*bef2592cSzhijianCHECK-AR-NEXT:  macho-universal-archive.x86_64.i386(hello.o) (for architecture x86_64):
40e858a653SKevin EnderbyCHECK-AR:       0000000000000068 s EH_frame0
41e858a653SKevin EnderbyCHECK-AR:       000000000000003b s L_.str
42e858a653SKevin EnderbyCHECK-AR:       0000000000000000 T _main
43e858a653SKevin EnderbyCHECK-AR:       0000000000000080 S _main.eh
441b985af0SKevin EnderbyCHECK-AR:                        U _printf
451983fcf8SKevin EnderbyCHECK-AR: macho-universal-archive.x86_64.i386(foo.o) (for architecture i386):
461e1b992aSKevin EnderbyCHECK-AR: 00000008 D _bar
47e858a653SKevin EnderbyCHECK-AR: 00000000 T _foo
484c8dfe4dSKevin Enderby
49*bef2592cSzhijianCHECK-64-AR:      {{^$}}
50*bef2592cSzhijianCHECK-64-AR-NEXT: macho-universal64-archive.x86_64.i386(foo.o) (for architecture i386):
51eb6d110cSKevin EnderbyCHECK-64-AR:      00000008 D _bar
52eb6d110cSKevin EnderbyCHECK-64-AR:      00000000 T _foo
53eb6d110cSKevin EnderbyCHECK-64-AR:      macho-universal64-archive.x86_64.i386(hello.o) (for architecture x86_64):
54eb6d110cSKevin EnderbyCHECK-64-AR:      0000000000000068 s EH_frame0
55eb6d110cSKevin EnderbyCHECK-64-AR:      000000000000003b s L_.str
56eb6d110cSKevin EnderbyCHECK-64-AR:      0000000000000000 T _main
57eb6d110cSKevin EnderbyCHECK-64-AR:      0000000000000080 S _main.eh
58eb6d110cSKevin EnderbyCHECK-64-AR:                       U _printf
59eb6d110cSKevin Enderby
604c8dfe4dSKevin EnderbyCHECK-AR-i386: macho-universal-archive.x86_64.i386(foo.o):
614c8dfe4dSKevin EnderbyCHECK-AR-i386: 00000008 D _bar
624c8dfe4dSKevin EnderbyCHECK-AR-i386: 00000000 T _foo
6308e1bbd6SKevin Enderby
6408e1bbd6SKevin EnderbyCHECK-AR-o: (for architecture x86_64):{{.*}}/macho-universal-archive.x86_64.i386:hello.o: 0000000000000068 s EH_frame0
6508e1bbd6SKevin EnderbyCHECK-AR-o: (for architecture x86_64):{{.*}}/macho-universal-archive.x86_64.i386:hello.o: 000000000000003b s L_.str
6608e1bbd6SKevin EnderbyCHECK-AR-o: (for architecture x86_64):{{.*}}/macho-universal-archive.x86_64.i386:hello.o: 0000000000000000 T _main
6708e1bbd6SKevin EnderbyCHECK-AR-o: (for architecture x86_64):{{.*}}/macho-universal-archive.x86_64.i386:hello.o: 0000000000000080 S _main.eh
6808e1bbd6SKevin EnderbyCHECK-AR-o: (for architecture x86_64):{{.*}}/macho-universal-archive.x86_64.i386:hello.o:                  U _printf
6908e1bbd6SKevin EnderbyCHECK-AR-o: (for architecture i386):{{.*}}/macho-universal-archive.x86_64.i386:foo.o: 00000008 D _bar
7008e1bbd6SKevin EnderbyCHECK-AR-o: (for architecture i386):{{.*}}/macho-universal-archive.x86_64.i386:foo.o: 00000000 T _foo
71