blob: 5bb19dcacd374aaf6abae417a17701a2f5120375 [file] [log] [blame]
Kevin Enderbyecbc7242014-06-05 21:21:57 +00001RUN: llvm-nm -format darwin %p/Inputs/darwin-m-test1.mach0-armv7 \
2RUN: | FileCheck %s -check-prefix test1
3RUN: llvm-nm -format darwin %p/Inputs/darwin-m-test2.macho-i386 \
4RUN: | FileCheck %s -check-prefix test2
Kevin Enderbyd1e64612014-06-20 00:04:16 +00005RUN: llvm-nm -m %p/Inputs/darwin-m-test3.macho-x86-64 \
Kevin Enderbyecbc7242014-06-05 21:21:57 +00006RUN: | FileCheck %s -check-prefix test3
7
8# This is testing that the various bits in the n_desc feild are correct
9test1: 00000001 (absolute) non-external _a
10test1: 00000008 (common) (alignment 2^2) external _c
11test1: 0000000a (__DATA,__data) non-external [no dead strip] _d
12test1: 00000004 (__TEXT,__text) non-external [alt entry] _e
13test1: 00000000 (__TEXT,__text) non-external [symbol resolver] _r
14test1: 00000008 (__TEXT,__text) non-external [Thumb] _t
15
16# This is testing that an N_INDR symbol gets its alias name, the "(for ...)"
17test2: (undefined) external __i
18test2: (indirect) external _i (for __i)
19
20# This is testing is using darwin-m-test3.macho-x86-64 that is linked with
21# dylibs that have the follow set of -install_names:
22# Foo.framework/Foo
23# /System/Library/Frameworks/FooPath.framework/FooPath
24# FooSuffix.framework/FooSuffix_debug
25# /System/Library/Frameworks/FooPathSuffix.framework/FooPathSuffix_profile
26# FooVers.framework/Versions/A/FooVers
27# /System/Library/Frameworks/FooPathVers.framework/Versions/B/FooPathVers
28# libx.dylib
29# libxSuffix_profile.dylib
30# /usr/local/lib/libxPathSuffix_debug.dylib
31# libATS.A_profile.dylib
32# /usr/lib/libPathATS.A_profile.dylib
33# QT.A.qtx
34# /lib/QTPath.qtx
35# /usr/lib/libSystem.B.dylib
36# to test that MachOObjectFile::guessLibraryShortName() is correctly parsing
37# them into their short names.
38test3: 0000000100000000 (__TEXT,__text) [referenced dynamically] external __mh_execute_header
39test3: (undefined) external _atsPathVersSuffix (from libPathATS)
40test3: (undefined) external _atsVersSuffix (from libATS)
41test3: (undefined) external _foo (from Foo)
42test3: (undefined) external _fooPath (from FooPath)
43test3: (undefined) external _fooPathSuffix (from FooPathSuffix)
44test3: (undefined) external _fooPathVers (from FooPathVers)
45test3: (undefined) external _fooSuffix (from FooSuffix)
46test3: (undefined) external _fooVers (from FooVers)
47test3: 0000000100000e60 (__TEXT,__text) external _main
48test3: (undefined) external _qt (from QT)
49test3: (undefined) external _qtPath (from QTPath)
50test3: (undefined) external _x (from libx)
51test3: (undefined) external _xPathSuffix (from libxPathSuffix)
52test3: (undefined) external _xSuffix (from libxSuffix)
53test3: (undefined) external dyld_stub_binder (from libSystem)