OSDN Git Service

[LLVM][llvm-objcopy] Added basic plumbing to get things started
[android-x86/external-llvm.git] / test / tools / llvm-objcopy / program-headers.test
1 # RUN: yaml2obj %s -o %t
2 # RUN: llvm-objcopy %t %t2
3 # RUN: llvm-readobj -program-headers %t2 | FileCheck %s
4
5 !ELF
6 FileHeader:
7   Class:           ELFCLASS64
8   Data:            ELFDATA2LSB
9   Type:            ET_EXEC
10   Machine:         EM_X86_64
11 Sections:
12   - Name:            .text
13     Type:            SHT_PROGBITS
14     Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
15     AddressAlign:    0x0000000000001000
16     Content:         "00000000"
17   - Name:            .init
18     Type:            SHT_PROGBITS
19     Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
20     Content:         "00000000"
21     AddressAlign:    0x0000000000000010
22   - Name:            .data
23     Type:            SHT_PROGBITS
24     Flags:           [ SHF_ALLOC ]
25     Content:         "00000000"
26     AddressAlign:    0x0000000000001000
27 ProgramHeaders:
28   - Type: PT_LOAD
29     Flags: [ PF_X, PF_R ]
30     VAddr: 0xAAAA1000
31     PAddr: 0xFFFF1000
32     Sections:
33       - Section: .text
34       - Section: .init
35   - Type: PT_LOAD
36     Flags: [ PF_R ]
37     VAddr: 0xAAAA2000
38     PAddr: 0xFFFF2000
39     Sections:
40       - Section: .data
41
42 #CHECK:     ProgramHeaders [
43 #CHECK-NEXT:   ProgramHeader {
44 #CHECK-NEXT:    Type: PT_LOAD
45 #CHECK-NEXT:    Offset: 0x1000
46 #CHECK-NEXT:    VirtualAddress: 0xAAAA1000
47 #CHECK-NEXT:    PhysicalAddress: 0xFFFF1000
48 #CHECK-NEXT:    FileSize: 20
49 #CHECK-NEXT:    MemSize: 20
50 #CHECK-NEXT:    Flags [
51 #CHECK-NEXT:      PF_R
52 #CHECK-NEXT:      PF_X
53 #CHECK-NEXT:    ]
54 #CHECK-NEXT:    Alignment: 4096
55 #CHECK-NEXT:  }
56 #CHECK-NEXT:  ProgramHeader {
57 #CHECK-NEXT:    Type: PT_LOAD
58 #CHECK-NEXT:    Offset: 0x2000
59 #CHECK-NEXT:    VirtualAddress: 0xAAAA2000
60 #CHECK-NEXT:    PhysicalAddress: 0xFFFF2000
61 #CHECK-NEXT:    FileSize: 4
62 #CHECK-NEXT:    MemSize: 4
63 #CHECK-NEXT:    Flags [
64 #CHECK-NEXT:      PF_R
65 #CHECK-NEXT:    ]
66 #CHECK-NEXT:    Alignment: 4096
67 #CHECK-NEXT:  }
68 #CHECK-NEXT:]