llvm-for-llvmta/test/tools/llvm-readobj/ELF/headers.test

48 lines
1.4 KiB
Plaintext

## This is a test for --headers and its alias -e.
## Specifying --headers is equivalent to setting --file-headers,
## --program-headers and --section-headers at the same time.
## We test these options independently, so here we just check
## that --headers triggers them.
# RUN: yaml2obj %s -o %t
## Case A: test llvm-readelf output.
# RUN: llvm-readelf --headers %t > %t.headers.gnu.txt
# RUN: FileCheck %s --input-file=%t.headers.gnu.txt --check-prefix=GNU
# GNU: ELF Header:
# GNU: Section Headers:
# GNU: Program Headers:
# GNU: Section to Segment mapping:
# RUN: llvm-readelf -e %t > %t.e.gnu.txt
# RUN: cmp %t.headers.gnu.txt %t.e.gnu.txt
# RUN: llvm-readelf --file-headers --program-headers --section-headers %t > %t.all.gnu.txt
# RUN: cmp %t.headers.gnu.txt %t.all.gnu.txt
## Case B: test llvm-readobj output.
# RUN: llvm-readobj --headers %t > %t.headers.llvm.txt
# RUN: FileCheck %s --input-file=%t.headers.llvm.txt --check-prefix=LLVM
# LLVM: ElfHeader {
# LLVM: Sections [
# LLVM: ProgramHeaders [
# RUN: llvm-readobj -e %t > %t.e.llvm.txt
# RUN: cmp %t.headers.llvm.txt %t.e.llvm.txt
# RUN: llvm-readobj --file-headers --program-headers --section-headers %t > %t.all.llvm.txt
# RUN: cmp %t.headers.llvm.txt %t.all.llvm.txt
--- !ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Sections:
- Name: .foo
Type: SHT_PROGBITS
ProgramHeaders:
- Type: PT_LOAD