xref: /llvm-project/llvm/test/tools/llvm-objdump/ELF/ARM/disassemble-all-mapping-symbols.s (revision 9ea44c6894270546d6d88ef0d3abcf1e1876acae)
1// Regression test for a bug in which --disassemble-all had the side effect
2// of stopping mapping symbols from being checked in code sections, so that
3// mixed Arm/Thumb code would not all be correctly disassembled.
4
5@ RUN: llvm-mc -triple arm-unknown-linux -filetype=obj %s -o %t.o
6@ RUN: llvm-objdump --no-print-imm-hex -d %t.o | FileCheck %s
7@ RUN: llvm-objdump --no-print-imm-hex -d --disassemble-all %t.o | FileCheck %s
8
9@ CHECK:       00000000 <armfunc>:
10@ CHECK-NEXT:        0: e2800001      add     r0, r0, #1
11@ CHECK-NEXT:        4: e12fff1e      bx      lr
12@ CHECK-NEXT:        8: 00 00         .short  0x0000
13@ CHECK-EMPTY:
14@ CHECK:       0000000a <thmfunc>:
15@ CHECK-NEXT:        a: f100 0001     add.w   r0, r0, #1
16@ CHECK-NEXT:        e: 4770          bx      lr
17@ CHECK-NEXT:       10: 00 00         .short  0x0000
18
19	.arch armv8a
20        .text
21
22        .arm
23	.global	armfunc
24	.type	armfunc, %function
25armfunc:
26        add     r0, r0, #1
27        bx      lr
28        @@ Test that this is not displayed as a .word
29        .space  2
30
31        .thumb
32	.global	thmfunc
33	.type	thmfunc, %function
34thmfunc:
35        add     r0, r0, #1
36        bx      lr
37        .space  2
38