73 lines
2.5 KiB
Text
73 lines
2.5 KiB
Text
## Check that we are able to dump MIPS STO_* flags correctly when dumping symbols.
|
|
|
|
# RUN: yaml2obj %s -o %t.o
|
|
# RUN: llvm-readobj --symbols %t.o | FileCheck %s --strict-whitespace --check-prefix=MIPS-LLVM
|
|
# RUN: llvm-readobj --symbols %t.o --elf-output-style=JSON --pretty-print | FileCheck %s --check-prefix=MIPS-JSON
|
|
# RUN: llvm-readelf --symbols %t.o | FileCheck %s --strict-whitespace --check-prefix=MIPS-GNU
|
|
|
|
# MIPS-LLVM:Name: foo
|
|
# MIPS-LLVM:Other [
|
|
# MIPS-LLVM-NEXT: STO_MIPS_MICROMIPS (0x80)
|
|
# MIPS-LLVM-NEXT: STO_MIPS_OPTIONAL (0x4)
|
|
# MIPS-LLVM-NEXT: STO_MIPS_PIC (0x20)
|
|
# MIPS-LLVM-NEXT: STO_MIPS_PLT (0x8)
|
|
# MIPS-LLVM-NEXT:]
|
|
|
|
# MIPS-LLVM:Name: bar
|
|
# MIPS-LLVM:Other [
|
|
# MIPS-LLVM-NEXT: STO_MIPS_MIPS16 (0xF0)
|
|
# MIPS-LLVM-NEXT:]
|
|
|
|
# MIPS-GNU:Symbol table '.symtab' contains 3 entries:
|
|
# MIPS-GNU-NEXT: Num: Value Size Type Bind Vis Ndx Name
|
|
# MIPS-GNU-NEXT: 0: 00000000 0 NOTYPE LOCAL DEFAULT UND
|
|
# MIPS-GNU-NEXT: 1: 00000000 0 NOTYPE LOCAL DEFAULT [<other: 0xac>] UND foo
|
|
# MIPS-GNU-NEXT: 2: 00000000 0 NOTYPE LOCAL DEFAULT [<other: 0xf0>] UND bar
|
|
|
|
# MIPS-JSON: "Name": "foo",
|
|
# MIPS-JSON: "Other": {
|
|
# MIPS-JSON-NEXT: "Value": 172,
|
|
# MIPS-JSON-NEXT: "Flags": [
|
|
# MIPS-JSON-NEXT: {
|
|
# MIPS-JSON-NEXT: "Name": "STO_MIPS_MICROMIPS",
|
|
# MIPS-JSON-NEXT: "Value": 128
|
|
# MIPS-JSON-NEXT: },
|
|
# MIPS-JSON-NEXT: {
|
|
# MIPS-JSON-NEXT: "Name": "STO_MIPS_OPTIONAL",
|
|
# MIPS-JSON-NEXT: "Value": 4
|
|
# MIPS-JSON-NEXT: },
|
|
# MIPS-JSON-NEXT: {
|
|
# MIPS-JSON-NEXT: "Name": "STO_MIPS_PIC",
|
|
# MIPS-JSON-NEXT: "Value": 32
|
|
# MIPS-JSON-NEXT: },
|
|
# MIPS-JSON-NEXT: {
|
|
# MIPS-JSON-NEXT: "Name": "STO_MIPS_PLT",
|
|
# MIPS-JSON-NEXT: "Value": 8
|
|
# MIPS-JSON-NEXT: }
|
|
# MIPS-JSON-NEXT: ]
|
|
# MIPS-JSON-NEXT: },
|
|
# MIPS-JSON: "Name": "bar",
|
|
# MIPS-JSON: "Other": {
|
|
# MIPS-JSON-NEXT: "Value": 240,
|
|
# MIPS-JSON-NEXT: "Flags": [
|
|
# MIPS-JSON-NEXT: {
|
|
# MIPS-JSON-NEXT: "Name": "STO_MIPS_MIPS16",
|
|
# MIPS-JSON-NEXT: "Value": 240
|
|
# MIPS-JSON-NEXT: }
|
|
# MIPS-JSON-NEXT: ]
|
|
# MIPS-JSON-NEXT: },
|
|
|
|
--- !ELF
|
|
FileHeader:
|
|
Class: ELFCLASS32
|
|
Data: ELFDATA2LSB
|
|
Type: ET_REL
|
|
Machine: EM_MIPS
|
|
Symbols:
|
|
- Name: foo
|
|
Other: [ STO_MIPS_MICROMIPS, STO_MIPS_PIC,
|
|
STO_MIPS_PLT, STO_MIPS_OPTIONAL]
|
|
## Use a different symbol for STO_MIPS_MIPS16 (0xf0) as it interferes
|
|
## with STO_MIPS_PIC (0x20) and STO_MIPS_MICROMIPS (0x80).
|
|
- Name: bar
|
|
Other: [ STO_MIPS_MIPS16 ]
|