[Alignment][NFC] Instructions::getLoadStoreAlignment
[llvm-complete.git] / test / tools / llvm-readobj / elf-file-types.test
blob0765cff1040c56a7e53bf5bab7b02cd25daebc36
1 ## Check llvm-readobj and llvm-readelf can dump files of the different ELF types.
3 # RUN: yaml2obj %s --docnum=1 -o %t1
4 # RUN: llvm-readobj -h %t1 | FileCheck %s --match-full-lines --check-prefix LLVM-NONE
5 # RUN: llvm-readelf -h %t1 | FileCheck %s --match-full-lines --check-prefix GNU-NONE
7 # LLVM-NONE: ElfHeader {
8 # LLVM-NONE:   Type: None (0x0)
10 # GNU-NONE: ELF Header:
11 # GNU-NONE:   Type: NONE (none)
13 --- !ELF
14 FileHeader:
15   Class:   ELFCLASS64
16   Data:    ELFDATA2LSB
17   Type:    ET_NONE
18   Machine: EM_X86_64
20 # RUN: yaml2obj %s --docnum=2 -o %t2
21 # RUN: llvm-readobj -h %t2 | FileCheck %s --match-full-lines --check-prefix LLVM-REL
22 # RUN: llvm-readelf -h %t2 | FileCheck %s --match-full-lines --check-prefix GNU-REL
24 # LLVM-REL: ElfHeader {
25 # LLVM-REL:   Type: Relocatable (0x1)
27 # GNU-REL: ELF Header:
28 # GNU-REL:   Type: REL (Relocatable file)
30 --- !ELF
31 FileHeader:
32   Class:   ELFCLASS64
33   Data:    ELFDATA2LSB
34   Type:    ET_REL
35   Machine: EM_X86_64
37 # RUN: yaml2obj %s --docnum=3 -o %t3
38 # RUN: llvm-readobj -h %t3 | FileCheck %s --match-full-lines --check-prefix LLVM-EXEC
39 # RUN: llvm-readelf -h %t3 | FileCheck %s --match-full-lines --check-prefix GNU-EXEC
41 # LLVM-EXEC: ElfHeader {
42 # LLVM-EXEC:   Type: Executable (0x2)
44 # GNU-EXEC: ELF Header:
45 # GNU-EXEC:   Type: EXEC (Executable file)
47 --- !ELF
48 FileHeader:
49   Class:   ELFCLASS64
50   Data:    ELFDATA2LSB
51   Type:    ET_EXEC
52   Machine: EM_X86_64
54 # RUN: yaml2obj %s --docnum=4 -o %t4
55 # RUN: llvm-readobj -h %t4 | FileCheck %s --match-full-lines --check-prefix LLVM-DYN
56 # RUN: llvm-readelf -h %t4 | FileCheck %s --match-full-lines --check-prefix GNU-DYN
58 # LLVM-DYN: ElfHeader {
59 # LLVM-DYN:   Type: SharedObject (0x3)
61 # GNU-DYN: ELF Header:
62 # GNU-DYN:   Type: DYN (Shared object file)
64 --- !ELF
65 FileHeader:
66   Class:   ELFCLASS64
67   Data:    ELFDATA2LSB
68   Type:    ET_DYN
69   Machine: EM_X86_64
71 # RUN: yaml2obj %s --docnum=5 -o %t5
72 # RUN: llvm-readobj -h %t5 | FileCheck %s --match-full-lines --check-prefix LLVM-CORE
73 # RUN: llvm-readelf -h %t5 | FileCheck %s --match-full-lines --check-prefix GNU-CORE
75 # LLVM-CORE: ElfHeader {
76 # LLVM-CORE:   Type: Core (0x4)
78 # GNU-CORE: ELF Header:
79 # GNU-CORE:   Type: CORE (Core file)
81 --- !ELF
82 FileHeader:
83   Class:   ELFCLASS64
84   Data:    ELFDATA2LSB
85   Type:    ET_CORE
86   Machine: EM_X86_64
88 # RUN: yaml2obj %s --docnum=6 -o %t6
89 # RUN: llvm-readobj -h %t6 | FileCheck %s --match-full-lines --check-prefix LLVM-LOOS
90 # RUN: llvm-readelf -h %t6 | FileCheck %s --match-full-lines --check-prefix GNU-LOOS
92 # LLVM-LOOS: ElfHeader {
93 # LLVM-LOOS:   Type: 0xFE00
95 # GNU-LOOS: ELF Header:
96 # GNU-LOOS:   Type: fe00
98 --- !ELF
99 FileHeader:
100   Class:   ELFCLASS64
101   Data:    ELFDATA2LSB
102   Type:    0xfe00
103   Machine: EM_X86_64
105 # RUN: yaml2obj %s --docnum=7 -o %t7
106 # RUN: llvm-readobj -h %t7 | FileCheck %s --match-full-lines --check-prefix LLVM-HIOS
107 # RUN: llvm-readelf -h %t7 | FileCheck %s --match-full-lines --check-prefix GNU-HIOS
109 # LLVM-HIOS: ElfHeader {
110 # LLVM-HIOS:   Type: 0xFEFF
112 # GNU-HIOS: ELF Header:
113 # GNU-HIOS:   Type: feff
115 --- !ELF
116 FileHeader:
117   Class:   ELFCLASS64
118   Data:    ELFDATA2LSB
119   Type:    0xfeff
120   Machine: EM_X86_64
122 # RUN: yaml2obj %s --docnum=8 -o %t8
123 # RUN: llvm-readobj -h %t8 | FileCheck %s --match-full-lines --check-prefix LLVM-LOPROC
124 # RUN: llvm-readelf -h %t8 | FileCheck %s --match-full-lines --check-prefix GNU-LOPROC
126 # LLVM-LOPROC: ElfHeader {
127 # LLVM-LOPROC:   Type: 0xFF00
129 # GNU-LOPROC: ELF Header:
130 # GNU-LOPROC:   Type: ff00
132 --- !ELF
133 FileHeader:
134   Class:   ELFCLASS64
135   Data:    ELFDATA2LSB
136   Type:    0xff00
137   Machine: EM_X86_64
139 # RUN: yaml2obj %s --docnum=9 -o %t9
140 # RUN: llvm-readobj -h %t9 | FileCheck %s --match-full-lines --check-prefix LLVM-HIPROC
141 # RUN: llvm-readelf -h %t9 | FileCheck %s --match-full-lines --check-prefix GNU-HIPROC
143 # LLVM-HIPROC: ElfHeader {
144 # LLVM-HIPROC:   Type: 0xFFFF
146 # GNU-HIPROC: ELF Header:
147 # GNU-HIPROC:   Type: ffff
149 --- !ELF
150 FileHeader:
151   Class:   ELFCLASS64
152   Data:    ELFDATA2LSB
153   Type:    0xffff
154   Machine: EM_X86_64