
This implements very basic support for RISC-V mapping symbols in llvm-objdump, sharing the implementation with how Arm/AArch64/CSKY implement this feature. This only supports the `$x` (instruction) and `$d` (data) mapping symbols for RISC-V, and not the version of `$x` which includes an architecture string suffix.
61 lines
2.1 KiB
Plaintext
61 lines
2.1 KiB
Plaintext
# RUN: yaml2obj %s -o %t
|
|
# RUN: llvm-objdump -d %t | FileCheck %s
|
|
|
|
## This CHECKs objdump's handling of wide instruction encodings, and how it
|
|
## groups the instruction bytes when disassembling.
|
|
##
|
|
## This is written in YAML because using `.byte` emits the wrong mapping
|
|
## symbols.
|
|
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS32
|
|
Data: ELFDATA2LSB
|
|
Type: ET_REL
|
|
Machine: EM_RISCV
|
|
SectionHeaderStringTable: .strtab
|
|
Sections:
|
|
- Name: .text
|
|
Type: SHT_PROGBITS
|
|
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
|
|
AddressAlign: 0x1
|
|
ContentArray: [
|
|
# CHECK: 011f 4523 8967 <unknown>
|
|
0x1f, 0x01, 0x23, 0x45, 0x67, 0x89,
|
|
|
|
# CHECK: 4523013f cdab8967 <unknown>
|
|
0x3f, 0x01, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd,
|
|
|
|
# CHECK: 007f 4523 8967 cdab feef <unknown>
|
|
0x7f, 0x00, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe,
|
|
|
|
# CHECK: 4523107f cdab8967 badcfeef <unknown>
|
|
0x7f, 0x10, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xdc, 0xba,
|
|
|
|
# CHECK: 207f 4523 8967 cdab feef badc 7698 <unknown>
|
|
0x7f, 0x20, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xdc, 0xba, 0x98, 0x76,
|
|
|
|
# CHECK: 4523307f cdab8967 badcfeef 32547698 <unknown>
|
|
0x7f, 0x30, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32,
|
|
|
|
# CHECK: 407f 4523 8967 cdab feef badc 7698 3254 1210 <unknown>
|
|
0x7f, 0x40, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, 0x12,
|
|
|
|
# CHECK: 4523507f cdab8967 badcfeef 32547698 56341210 <unknown>
|
|
0x7f, 0x50, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, 0x12, 0x34, 0x56,
|
|
|
|
# CHECK: 607f 4523 8967 cdab feef badc 7698 3254 1210 5634 9a78 <unknown>
|
|
0x7f, 0x60, 0x23, 0x45, 0x67, 0x89, 0xab, 0xcd, 0xef, 0xfe, 0xdc, 0xba, 0x98, 0x76, 0x54, 0x32, 0x10, 0x12, 0x34, 0x56, 0x78, 0x9a,
|
|
]
|
|
|
|
- Type: SectionHeaderTable
|
|
Sections:
|
|
- Name: .strtab
|
|
- Name: .symtab
|
|
- Name: .text
|
|
Symbols:
|
|
- Name: "$x"
|
|
Section: .text
|
|
Value: 0x0
|
|
...
|