]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/mach-o/demangle.yaml
Vendor import of lld trunk r338150:
[FreeBSD/FreeBSD.git] / test / mach-o / demangle.yaml
1 # REQUIRES: system-linker-mach-o
2 #
3 # RUN: not ld64.lld -arch x86_64 -macosx_version_min 10.8 %s  \
4 # RUN:     -dylib -o %t %p/Inputs/x86_64/libSystem.yaml  2> %t.err
5 # RUN: FileCheck %s < %t.err
6 #
7 # RUN: not ld64.lld -arch x86_64 -macosx_version_min 10.8 %s \
8 # RUN:     -dylib -o %t %p/Inputs/x86_64/libSystem.yaml -demangle 2> %t.err2
9 # RUN: FileCheck %s --check-prefix=DCHECK < %t.err2
10 #
11 # Test -demangle option works on undefined symbol errors.
12 #
13
14 --- !mach-o
15 arch:            x86_64
16 file-type:       MH_OBJECT
17 flags:           [ MH_SUBSECTIONS_VIA_SYMBOLS ]
18 sections:
19   - segment:         __TEXT
20     section:         __text
21     type:            S_REGULAR
22     attributes:      [ S_ATTR_PURE_INSTRUCTIONS, S_ATTR_SOME_INSTRUCTIONS ]
23     address:         0x0000000000000000
24     content:         [ 0xE8, 0x00, 0x00, 0x00, 0x00, 0xE8, 0x00, 0x00,
25                        0x00, 0x00, 0xE8, 0x00, 0x00, 0x00, 0x00 ]
26     relocations:
27       - offset:          0x0000000B
28         type:            X86_64_RELOC_BRANCH
29         length:          2
30         pc-rel:          true
31         extern:          true
32         symbol:          2
33       - offset:          0x00000006
34         type:            X86_64_RELOC_BRANCH
35         length:          2
36         pc-rel:          true
37         extern:          true
38         symbol:          3
39       - offset:          0x00000001
40         type:            X86_64_RELOC_BRANCH
41         length:          2
42         pc-rel:          true
43         extern:          true
44         symbol:          1
45 global-symbols:
46   - name:            __Z1xv
47     type:            N_SECT
48     scope:           [ N_EXT ]
49     sect:            1
50     value:           0x0000000000000000
51 undefined-symbols:
52   - name:            __Znam
53     type:            N_UNDF
54     scope:           [ N_EXT ]
55     value:           0x0000000000000000
56   - name:            __Znotcpp
57     type:            N_UNDF
58     scope:           [ N_EXT ]
59     value:           0x0000000000000000
60   - name:            _foo
61     type:            N_UNDF
62     scope:           [ N_EXT ]
63     value:           0x0000000000000000
64
65 ...
66
67 # CHECK:  __Znotcpp
68 # CHECK:  __Znam
69 # CHECK:  _foo
70
71 # DCHECK:  __Znotcpp
72 # DCHECK: operator new[](unsigned long)
73 # DCHECK:  _foo
74