xref: /llvm-project/llvm/test/tools/llvm-objcopy/ELF/segment-shift.test (revision a7a447be0fa934505f0c423fb97b91a68c1cc715)
16e4dc6f2SAlexander Shaposhnikov# RUN: yaml2obj %s -o %t
26e4dc6f2SAlexander Shaposhnikov# RUN: llvm-objcopy %t %t2
3298ea3f5SJordan Rupprecht# RUN: llvm-readobj --program-headers %t2 | FileCheck %s
46e4dc6f2SAlexander Shaposhnikov
56e4dc6f2SAlexander Shaposhnikov!ELF
66e4dc6f2SAlexander ShaposhnikovFileHeader:
76e4dc6f2SAlexander Shaposhnikov  Class:           ELFCLASS64
86e4dc6f2SAlexander Shaposhnikov  Data:            ELFDATA2LSB
96e4dc6f2SAlexander Shaposhnikov  Type:            ET_EXEC
106e4dc6f2SAlexander Shaposhnikov  Machine:         EM_X86_64
116e4dc6f2SAlexander ShaposhnikovSections:
126e4dc6f2SAlexander Shaposhnikov  - Name:            .text
136e4dc6f2SAlexander Shaposhnikov    Type:            SHT_PROGBITS
146e4dc6f2SAlexander Shaposhnikov    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
156e4dc6f2SAlexander Shaposhnikov    Address:         0x1000
166e4dc6f2SAlexander Shaposhnikov    AddressAlign:    0x1000
176e4dc6f2SAlexander Shaposhnikov    Size:            0x1000
186e4dc6f2SAlexander Shaposhnikov  - Name:            .text2
196e4dc6f2SAlexander Shaposhnikov    Type:            SHT_PROGBITS
206e4dc6f2SAlexander Shaposhnikov    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
216e4dc6f2SAlexander Shaposhnikov    Address:         0x2000
226e4dc6f2SAlexander Shaposhnikov    AddressAlign:    0x1000
236e4dc6f2SAlexander Shaposhnikov    Size:            0x1000
246e4dc6f2SAlexander Shaposhnikov  - Name:            .text3
256e4dc6f2SAlexander Shaposhnikov    Type:            SHT_PROGBITS
266e4dc6f2SAlexander Shaposhnikov    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
276e4dc6f2SAlexander Shaposhnikov    Address:         0x3000
286e4dc6f2SAlexander Shaposhnikov    AddressAlign:    0x1000
296e4dc6f2SAlexander Shaposhnikov    Size:            0x1000
306e4dc6f2SAlexander ShaposhnikovProgramHeaders:
316e4dc6f2SAlexander Shaposhnikov  - Type:     PT_LOAD
326e4dc6f2SAlexander Shaposhnikov    Flags:    [ PF_R ]
336e4dc6f2SAlexander Shaposhnikov    VAddr:    0x1000
34*a7a447beSGeorgii Rymar    FirstSec: .text
35*a7a447beSGeorgii Rymar    LastSec:  .text
366e4dc6f2SAlexander Shaposhnikov  - Type:     PT_LOAD
376e4dc6f2SAlexander Shaposhnikov    Flags:    [ PF_X, PF_R ]
386e4dc6f2SAlexander Shaposhnikov    VAddr:    0x3000
39*a7a447beSGeorgii Rymar    FirstSec: .text3
40*a7a447beSGeorgii Rymar    LastSec:  .text3
416e4dc6f2SAlexander Shaposhnikov
426e4dc6f2SAlexander Shaposhnikov# CHECK:     ProgramHeaders [
436e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:  ProgramHeader {
446e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Type: PT_LOAD (0x1)
456e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Offset: 0x1000
466e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    VirtualAddress: 0x1000
476e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    PhysicalAddress: 0x1000
486e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    FileSize: 4096
496e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    MemSize: 4096
506e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Flags [ (0x4)
516e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:      PF_R (0x4)
526e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    ]
536e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Alignment: 4096
546e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:  }
556e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:  ProgramHeader {
566e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Type: PT_LOAD (0x1)
576e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Offset: 0x2000
586e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    VirtualAddress: 0x3000
596e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    PhysicalAddress: 0x3000
606e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    FileSize: 4096
616e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    MemSize: 4096
626e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Flags [ (0x5)
636e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:      PF_R (0x4)
646e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:      PF_X (0x1)
656e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    ]
666e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:    Alignment: 4096
676e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:  }
686e4dc6f2SAlexander Shaposhnikov# CHECK-NEXT:]
69