xref: /llvm-project/llvm/test/tools/llvm-readobj/ELF/RISCV/stother.test (revision 8971b99c8387f3daf2e802956f2688b3b77335a4)
1*8971b99cSFangrui Song## Check that we are able to dump RISC-V STO_* flags correctly when dumping symbols.
2*8971b99cSFangrui Song
3*8971b99cSFangrui Song# RUN: yaml2obj %s -o %t.o
4*8971b99cSFangrui Song# RUN: llvm-readobj -s %t.o | FileCheck %s --check-prefix=LLVM
5*8971b99cSFangrui Song# RUN: llvm-readelf -s %t.o | FileCheck %s --check-prefix=GNU
6*8971b99cSFangrui Song
7*8971b99cSFangrui Song# LLVM:      Name: foo1
8*8971b99cSFangrui Song# LLVM:      Other [ (0x80)
9*8971b99cSFangrui Song# LLVM-NEXT:   STO_RISCV_VARIANT_CC (0x80)
10*8971b99cSFangrui Song# LLVM-NEXT: ]
11*8971b99cSFangrui Song# LLVM:      Name: foo2
12*8971b99cSFangrui Song# LLVM:      Other [ (0xC0)
13*8971b99cSFangrui Song# LLVM-NEXT:   STO_RISCV_VARIANT_CC (0x80)
14*8971b99cSFangrui Song# LLVM-NEXT: ]
15*8971b99cSFangrui Song# LLVM:      Name: foo3
16*8971b99cSFangrui Song# LLVM:      Other [ (0x83)
17*8971b99cSFangrui Song# LLVM-NEXT:   STO_RISCV_VARIANT_CC (0x80)
18*8971b99cSFangrui Song# LLVM-NEXT:   STV_PROTECTED (0x3)
19*8971b99cSFangrui Song# LLVM-NEXT: ]
20*8971b99cSFangrui Song
21*8971b99cSFangrui Song# GNU:      Symbol table '.symtab' contains 4 entries:
22*8971b99cSFangrui Song# GNU:      1: 0000000000000000 0 NOTYPE LOCAL DEFAULT   [VARIANT_CC]      UND foo1
23*8971b99cSFangrui Song# GNU-NEXT: 2: 0000000000000000 0 NOTYPE LOCAL DEFAULT   [VARIANT_CC | 40] UND foo2
24*8971b99cSFangrui Song# GNU-NEXT: 3: 0000000000000000 0 NOTYPE LOCAL PROTECTED [VARIANT_CC]      UND foo3
25*8971b99cSFangrui Song
26*8971b99cSFangrui Song--- !ELF
27*8971b99cSFangrui SongFileHeader:
28*8971b99cSFangrui Song  Class:   ELFCLASS64
29*8971b99cSFangrui Song  Data:    ELFDATA2LSB
30*8971b99cSFangrui Song  Type:    ET_REL
31*8971b99cSFangrui Song  Machine: EM_RISCV
32*8971b99cSFangrui SongSymbols:
33*8971b99cSFangrui Song  - Name: foo1
34*8971b99cSFangrui Song    Other: [ STO_RISCV_VARIANT_CC ]
35*8971b99cSFangrui Song  - Name: foo2
36*8971b99cSFangrui Song    Other: [ STO_RISCV_VARIANT_CC, 0x40 ]
37*8971b99cSFangrui Song  - Name: foo3
38*8971b99cSFangrui Song    Other: [ STO_RISCV_VARIANT_CC, STV_PROTECTED ]
39