[llvm/test/Object] - Cleanup and move out the yaml2obj tests.
[llvm-complete.git] / test / tools / yaml2obj / elf-class-endianness.test
blobf18ffc4c994813bbd294f2fbff17a1e817c67dae
1 ## Check we can produce 32/64 bits outputs with a different endianness.
3 # RUN: yaml2obj %s --docnum=1 | llvm-readobj --file-headers - | FileCheck %s --check-prefix LE64
4 # RUN: yaml2obj %s --docnum=2 | llvm-readobj --file-headers - | FileCheck %s --check-prefix BE64
5 # RUN: yaml2obj %s --docnum=3 | llvm-readobj --file-headers - | FileCheck %s --check-prefix LE32
6 # RUN: yaml2obj %s --docnum=4 | llvm-readobj --file-headers - | FileCheck %s --check-prefix BE32
8 # LE64:      Class: 64-bit (0x2)
9 # LE64-NEXT: DataEncoding: LittleEndian (0x1)
11 # BE64:      Class: 64-bit (0x2)
12 # BE64-NEXT: DataEncoding: BigEndian (0x2)
14 # LE32:      Class: 32-bit (0x1)
15 # LE32-NEXT: DataEncoding: LittleEndian (0x1)
17 # BE32:      Class: 32-bit (0x1)
18 # BE32-NEXT: DataEncoding: BigEndian (0x2)
20 --- !ELF
21 FileHeader: !FileHeader
22   Class: ELFCLASS64
23   Data: ELFDATA2LSB
24   Type: ET_EXEC
25   Machine: EM_X86_64
27 --- !ELF
28 FileHeader: !FileHeader
29   Class: ELFCLASS64
30   Data: ELFDATA2MSB
31   Type: ET_EXEC
32   Machine: EM_PPC64
34 --- !ELF
35 FileHeader: !FileHeader
36   Class: ELFCLASS32
37   Data: ELFDATA2LSB
38   Type: ET_EXEC
39   Machine: EM_386
41 --- !ELF
42 FileHeader: !FileHeader
43   Class: ELFCLASS32
44   Data: ELFDATA2MSB
45   Type: ET_EXEC
46   Machine: EM_PPC