mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
7add0fa08e
The errors coming from ELF.h are usually not very useful because they are uninformative. This patch is a first step to improve the situation. I tested this patch with a run of check-llvm and found that few messages are untested. In this patch, I did not add more tests but marked all such cases with a "TODO" comment. For all tested messages I extended the error text to provide more details (see test cases changed). Differential revision: https://reviews.llvm.org/D64014 llvm-svn: 365183
26 lines
877 B
Plaintext
26 lines
877 B
Plaintext
# 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 are longer than binary of size 4162: e_phoff = 0xffffff, e_phnum = 1, e_phentsize = 56 |