## Test that in the presence of SHT_LLVM_BB_ADDR_MAP sections, ## --symbolize-operands can display labels properly in a relocatable ## object file. ## Fails on windows (https://github.com/llvm/llvm-project/issues/60013). # UNSUPPORTED: system-windows ## Relocatable Object file. # RUN: yaml2obj %s -o %t1 # RUN: llvm-objdump %t1 -d --symbolize-operands -M att --no-show-raw-insn --no-leading-addr | \ # RUN: FileCheck %s -DSYM=symbol --match-full-lines --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_REL Machine: EM_X86_64 SectionHeaderStringTable: .strtab Sections: - Name: .text Type: SHT_PROGBITS Flags: [ SHF_ALLOC, SHF_EXECINSTR ] Content: FFFF - Name: .llvm_bb_addr_map Type: SHT_LLVM_BB_ADDR_MAP Link: .text Entries: - Version: 2 BBEntries: - ID: 0 AddressOffset: 0x0 Size: 0x1 Metadata: 0x1 - Version: 2 BBEntries: - ID: 0 AddressOffset: 0x0 Size: 0x1 Metadata: 0x1 - Name: .rela.llvm_bb_addr_map Type: SHT_RELA Flags: [ SHF_INFO_LINK ] Link: .symtab Info: .llvm_bb_addr_map Relocations: - Offset: 0x2 Symbol: .text Type: R_X86_64_64 - Offset: 0x11 Symbol: .text Type: R_X86_64_64 Addend: 1 Symbols: - Name: a Section: .text Value: 0x0 - Name: c Section: .text Value: 0x1 - Name: .text Type: STT_SECTION Section: .text # CHECK: : # CHECK-NEXT: : # CHECK: : # CHECK-NEXT: : ## Check that if we're missing a relocation section we get the appropriate ## warning. # RUN: yaml2obj %s --docnum=2 -o %t2 # RUN: llvm-readobj %t2 --bb-addr-map 2>&1 | FileCheck %s --check-prefix=NO-RELA-SECTION -DFILE=%t2 --- !ELF FileHeader: Class: ELFCLASS64 Data: ELFDATA2LSB Type: ET_REL Machine: EM_X86_64 Sections: - Name: .text Type: SHT_PROGBITS Flags: [ SHF_ALLOC, SHF_EXECINSTR ] Content: FF - Name: .llvm_bb_addr_map Type: SHT_LLVM_BB_ADDR_MAP Link: .text # NO-RELA-SECTION: warning: '[[FILE]]': unable to get relocation section for SHT_LLVM_BB_ADDR_MAP section with index 2