Recommit "rL366894: [yaml2obj] - Allow custom fields for the SHT_UNDEF sections."
[llvm-complete.git] / test / tools / llvm-objdump / X86 / disassemble-functions-mangling.test
blobb4cdd0e6d01e5eae7a239488477ad9cb4a29975d
1 ## Show that the --disassemble-functions switch takes demangled names when
2 ## --demangle is specified, otherwise the switch takes mangled names.
4 # RUN: yaml2obj %s -o %t.o
6 ## --disassemble-functions without --demangle.
7 # RUN: llvm-objdump --disassemble-functions=_Z3foov %t.o | FileCheck %s --check-prefix=MANGLED
8 # RUN: llvm-objdump --disassemble-functions='foo()' %t.o 2>&1 \
9 # RUN:   | FileCheck %s --check-prefix=MANGLED-MISS
10 # RUN: llvm-objdump --disassemble-functions=foo %t.o 2>&1 \
11 # RUN:   | FileCheck %s --check-prefix=MANGLED-MISS
12 # RUN: llvm-objdump --disassemble-functions='i,f' %t.o | FileCheck %s --check-prefix=NOMANGLE
14 ## --disassemble-functions with --demangle.
15 # RUN: llvm-objdump -C --disassemble-functions='foo()' %t.o | FileCheck %s --check-prefix=DEMANGLED
16 # RUN: llvm-objdump -C --disassemble-functions='_Z3foov' %t.o 2>&1 \
17 # RUN:   | FileCheck %s --check-prefix=DEMANGLED-MISS
18 # RUN: llvm-objdump -C --disassemble-functions='i,f' %t.o | FileCheck %s --check-prefix=NOMANGLE
19 # RUN: llvm-objdump -C --disassemble-functions='std::allocator<wchar_t>::allocator()' %t.o 2>&1 \
20 # RUN:   | FileCheck %s --check-prefix=DEMANGLED-MULTI
22 # MANGLED: _Z3foov:
23 # MANGLED-MISS: warning: failed to disassemble missing function foo
25 # DEMANGLED: foo():
26 # DEMANGLED-MISS: warning: failed to disassemble missing function _Z3foov
28 # NOMANGLE: i:
29 # NOMANGLE: f:
31 # DEMANGLED-MULTI: std::allocator<wchar_t>::allocator():
32 # DEMANGLED-MULTI: std::allocator<wchar_t>::allocator():
34 --- !ELF
35 FileHeader:
36   Class:   ELFCLASS64
37   Data:    ELFDATA2LSB
38   Type:    ET_EXEC
39   Machine: EM_X86_64
40 Sections:
41   - Name:  .text
42     Type:  SHT_PROGBITS
43     Flags: [SHF_ALLOC, SHF_EXECINSTR]
44     Address: 0x1000
45     Content: 9090909090
46 Symbols:
47   - Name:    _Z3foov
48     Value:   0x1000
49     Section: .text
50   - Name:    i
51     Value:   0x1001
52     Section: .text
53   - Name:    f
54     Value:   0x1002
55     Section: .text
56   - Name:    _ZNSaIwEC1Ev
57     Value:   0x1003
58     Section: .text
59   - Name:    _ZNSaIwEC2Ev
60     Value:   0x1004
61     Section: .text