• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1## This is a test to test how the ABI version field (EI_ABIVERSION) of an ELF file header is dumped.
2
3## EI_ABIVERSION is set to zero.
4# RUN: yaml2obj %s -DABIVERSION=0 -o %t.abiver.zero
5# RUN: llvm-readobj --file-headers %t.abiver.zero | FileCheck %s --match-full-lines --check-prefix=ABIVER-ZERO-LLVM
6# RUN: llvm-readelf --file-headers %t.abiver.zero | FileCheck %s --match-full-lines --check-prefix=ABIVER-ZERO-GNU
7
8# ABIVER-ZERO-LLVM: ABIVersion: 0
9# ABIVER-ZERO-GNU:  ABI Version: 0
10
11## EI_ABIVERSION is set to an arbitrary number.
12# RUN: yaml2obj %s -DABIVERSION=52 -o %t.abiver.any
13# RUN: llvm-readobj --file-headers %t.abiver.any | FileCheck %s --match-full-lines --check-prefix=ABIVER-ANY-LLVM
14# RUN: llvm-readelf --file-headers %t.abiver.any | FileCheck %s --match-full-lines --check-prefix=ABIVER-ANY-GNU
15
16# ABIVER-ANY-LLVM: ABIVersion: 52
17# ABIVER-ANY-GNU:  ABI Version: 52
18
19## EI_ABIVERSION is set to the maximum possible value.
20# RUN: yaml2obj %s -DABIVERSION=255 -o %t.abiver.max
21# RUN: llvm-readobj --file-headers %t.abiver.max | FileCheck %s --match-full-lines --check-prefix=ABIVER-MAX-LLVM
22# RUN: llvm-readelf --file-headers %t.abiver.max | FileCheck %s --match-full-lines --check-prefix=ABIVER-MAX-GNU
23
24# ABIVER-MAX-LLVM: ABIVersion: 255
25# ABIVER-MAX-GNU:  ABI Version: 255
26
27--- !ELF
28FileHeader:
29  Class:      ELFCLASS64
30  Data:       ELFDATA2LSB
31  Type:       ET_REL
32  ABIVersion: [[ABIVERSION]]
33