Chris Bieneman | 9cf90e6 | 2016-06-27 19:53:53 +0000 | [diff] [blame] | 1 | # RUN: yaml2obj %s | llvm-readobj -sections -section-data - | FileCheck %s |
| 2 | # RUN: yaml2obj -o %t %s |
Simon Atanasyan | 926273d | 2014-05-15 16:14:02 +0000 | [diff] [blame] | 3 | # RUN: llvm-readobj -sections -section-data %t | FileCheck %s |
| 4 | |
Sean Silva | 274264c | 2013-06-13 22:19:48 +0000 | [diff] [blame] | 5 | !ELF |
| 6 | FileHeader: |
| 7 | Class: ELFCLASS64 |
| 8 | Data: ELFDATA2LSB |
| 9 | Type: ET_REL |
| 10 | Machine: EM_X86_64 |
| 11 | Sections: |
| 12 | - Name: .text |
| 13 | Type: SHT_PROGBITS |
| 14 | Flags: [ SHF_ALLOC, SHF_EXECINSTR ] |
Sean Silva | 97d37e8 | 2013-06-14 00:38:02 +0000 | [diff] [blame] | 15 | Address: 0xCAFEBABE |
Sean Silva | fe57e34 | 2013-06-15 00:25:26 +0000 | [diff] [blame] | 16 | Link: .text # Doesn't make sense for SHT_PROGBITS, but good enough for test. |
Sean Silva | 2a7e79a | 2013-06-13 22:20:01 +0000 | [diff] [blame] | 17 | Content: EBFE |
Sean Silva | 97d37e8 | 2013-06-14 00:38:02 +0000 | [diff] [blame] | 18 | AddressAlign: 2 |
Sean Silva | 274264c | 2013-06-13 22:19:48 +0000 | [diff] [blame] | 19 | |
Simon Atanasyan | 19ab8f8 | 2014-05-16 16:01:00 +0000 | [diff] [blame] | 20 | - Name: .data |
| 21 | Type: SHT_PROGBITS |
| 22 | Flags: [ SHF_ALLOC ] |
| 23 | Address: 0xCAFECAFE |
| 24 | Content: FEBF |
| 25 | Size: 8 |
| 26 | AddressAlign: 2 |
| 27 | |
Sean Silva | 274264c | 2013-06-13 22:19:48 +0000 | [diff] [blame] | 28 | # CHECK: Section { |
| 29 | # CHECK: Index: 0 |
| 30 | # CHECK: Type: SHT_NULL (0x0) |
| 31 | # |
| 32 | # CHECK: Section { |
| 33 | # CHECK: Name: .text |
| 34 | # CHECK: Type: SHT_PROGBITS (0x1) |
| 35 | # CHECK-NEXT: Flags [ (0x6) |
| 36 | # CHECK-NEXT: SHF_ALLOC (0x2) |
| 37 | # CHECK-NEXT: SHF_EXECINSTR (0x4) |
| 38 | # CHECK-NEXT: ] |
Sean Silva | 97d37e8 | 2013-06-14 00:38:02 +0000 | [diff] [blame] | 39 | # CHECK-NEXT: Address: 0xCAFEBABE |
Sean Silva | 2a7e79a | 2013-06-13 22:20:01 +0000 | [diff] [blame] | 40 | # CHECK: Size: 2 |
Sean Silva | fe57e34 | 2013-06-15 00:25:26 +0000 | [diff] [blame] | 41 | # Check that Link != 0. |
| 42 | # CHECK: Link: {{[1-9][0-9]*}} |
Sean Silva | 97d37e8 | 2013-06-14 00:38:02 +0000 | [diff] [blame] | 43 | # CHECK: AddressAlignment: 2 |
Sean Silva | 2a7e79a | 2013-06-13 22:20:01 +0000 | [diff] [blame] | 44 | # CHECK: SectionData ( |
| 45 | # CHECK-NEXT: 0000: EBFE |
| 46 | # CHECK-NEXT: ) |
Simon Atanasyan | 9f685d3 | 2014-03-14 06:53:16 +0000 | [diff] [blame] | 47 | # |
| 48 | # CHECK: Section { |
Simon Atanasyan | 19ab8f8 | 2014-05-16 16:01:00 +0000 | [diff] [blame] | 49 | # CHECK: Name: .data |
| 50 | # CHECK-NEXT: Type: SHT_PROGBITS (0x1) |
| 51 | # CHECK-NEXT: Flags [ (0x2) |
| 52 | # CHECK-NEXT: SHF_ALLOC (0x2) |
| 53 | # CHECK-NEXT: ] |
| 54 | # CHECK-NEXT: Address: 0xCAFECAFE |
Simon Atanasyan | 3c1e74b | 2015-07-08 06:57:24 +0000 | [diff] [blame] | 55 | # CHECK-NEXT: Offset: 0x{{[0-9A-F]+}} |
Simon Atanasyan | 19ab8f8 | 2014-05-16 16:01:00 +0000 | [diff] [blame] | 56 | # CHECK-NEXT: Size: 8 |
| 57 | # CHECK-NEXT: Link: 0 |
| 58 | # CHECK-NEXT: Info: 0 |
| 59 | # CHECK-NEXT: AddressAlignment: 2 |
| 60 | # CHECK-NEXT: EntrySize: 0 |
| 61 | # CHECK-NEXT: SectionData ( |
| 62 | # CHECK-NEXT: 0000: FEBF0000 00000000 |........| |
| 63 | # CHECK-NEXT: ) |
| 64 | # |
| 65 | # CHECK: Section { |
Hans Wennborg | 14d1db9 | 2014-04-30 19:38:09 +0000 | [diff] [blame] | 66 | # CHECK: Name: .symtab (25) |
Simon Atanasyan | 9f685d3 | 2014-03-14 06:53:16 +0000 | [diff] [blame] | 67 | # CHECK: Type: SHT_SYMTAB (0x2) |
Simon Atanasyan | ba8d948 | 2015-07-09 18:23:02 +0000 | [diff] [blame] | 68 | # CHECK: AddressAlignment: 8 |
Simon Atanasyan | 9f685d3 | 2014-03-14 06:53:16 +0000 | [diff] [blame] | 69 | # CHECK: } |
| 70 | # CHECK: Section { |
Hans Wennborg | 14d1db9 | 2014-04-30 19:38:09 +0000 | [diff] [blame] | 71 | # CHECK: Name: .strtab (17) |
Simon Atanasyan | 9f685d3 | 2014-03-14 06:53:16 +0000 | [diff] [blame] | 72 | # CHECK: Type: SHT_STRTAB (0x3) |
Simon Atanasyan | ba8d948 | 2015-07-09 18:23:02 +0000 | [diff] [blame] | 73 | # CHECK: AddressAlignment: 1 |
Simon Atanasyan | 9f685d3 | 2014-03-14 06:53:16 +0000 | [diff] [blame] | 74 | # CHECK: } |
| 75 | # CHECK: Section { |
Hans Wennborg | 14d1db9 | 2014-04-30 19:38:09 +0000 | [diff] [blame] | 76 | # CHECK: Name: .shstrtab (7) |
Simon Atanasyan | 9f685d3 | 2014-03-14 06:53:16 +0000 | [diff] [blame] | 77 | # CHECK: Type: SHT_STRTAB (0x3) |
Simon Atanasyan | ba8d948 | 2015-07-09 18:23:02 +0000 | [diff] [blame] | 78 | # CHECK: AddressAlignment: 1 |
Simon Atanasyan | 9f685d3 | 2014-03-14 06:53:16 +0000 | [diff] [blame] | 79 | # CHECK: } |