brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · b1e3ca1 Raw
63 lines · plain
1## An empty dynamic section is invalid. Test we report a warning instead of an2## error, so that dumping can continue with other objects.3# RUN: yaml2obj %s --docnum=1 -o %t.empty4# RUN: llvm-objdump -p %t.empty 2>&1 | FileCheck %s -DFILE=%t.empty --check-prefix=EMPTY5 6# EMPTY:       Program Header:7# EMPTY-NEXT:  warning: '[[FILE]]': invalid empty dynamic section8# EMPTY-EMPTY:9 10--- !ELF11FileHeader:12  Class:   ELFCLASS6413  Data:    ELFDATA2LSB14  Type:    ET_EXEC15Sections:16  - Name: .dynamic17    Type: SHT_DYNAMIC18 19# RUN: yaml2obj %s --docnum=2 -o %t.nonull20# RUN: llvm-objdump -p %t.nonull 2>&1 | FileCheck %s -DFILE=%t.nonull --check-prefix=NONULL21 22# NONULL:       Program Header:23# NONULL-NEXT:  warning: '[[FILE]]': dynamic sections must be DT_NULL terminated24# NONULL-EMPTY:25 26--- !ELF27FileHeader:28  Class:   ELFCLASS6429  Data:    ELFDATA2LSB30  Type:    ET_EXEC31Sections:32  - Name: .dynamic33    Type: SHT_DYNAMIC34    Entries:35      - Tag:   DT_SONAME36        Value: 137 38# RUN: yaml2obj %s --docnum=3 -o %t.invalidaddr39# RUN: llvm-objdump -p %t.invalidaddr 2>&1 | \40# RUN:   FileCheck %s -DFILE=%t.invalidaddr --implicit-check-not=warning: --check-prefix=ADDR41 42# ADDR:       Dynamic Section:43# ADDR-NEXT:  warning: '[[FILE]]': virtual address is not in any segment: 0x47444# ADDR-NEXT:    NEEDED       0xffffffffbe5a0b5f45# ADDR-NEXT:    STRTAB       0x000000000000047446 47---48!ELF49FileHeader:50  Class: ELFCLASS6451  Data: ELFDATA2LSB52  Type: ET_DYN53Sections:54  - Name: .dynamic55    Type: SHT_DYNAMIC56    Entries:57      - Tag: DT_NEEDED58        Value: 0xFFFFFFFFBE5A0B5F59      - Tag: DT_STRTAB60        Value: 0x47461      - Tag: DT_NULL62        Value: 0x063