summaryrefslogtreecommitdiffstats
path: root/llvm/test/Object/elf-invalid-phdr.test
blob: 08c5487b5f0c4ee26928208547b951d14dd85ef1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# invalid-phdr.elf is generated by creating a simple elf file with yaml2obj:
# !ELF
# FileHeader:
#   Class:           ELFCLASS64
#   Data:            ELFDATA2LSB
#   Type:            ET_EXEC
#   Machine:         EM_X86_64
# Sections:
#   - Name:            .text
#     Type:            SHT_PROGBITS
#     Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
#     AddressAlign:    0x0000000000001000
#     Content:         "00000000"
# ProgramHeaders:
#   - Type: PT_LOAD
#     Flags: [ PF_X, PF_R ]
#     VAddr: 0xAAAA1000
#     PAddr: 0xFFFF1000
#     Sections:
#       - Section: .text
#
# Then editing the e_phoff in with a hexeditor to set it to 0xffffff
RUN: not llvm-objdump -private-headers %p/Inputs/invalid-phdr.elf 2>&1 \
RUN:         | FileCheck %s

CHECK: LLVM ERROR: program headers longer than binary
OpenPOWER on IntegriCloud