brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.3 KiB · d6d44f1 Raw
114 lines · plain
1# This test tests that each segment is assigned a canonical parent segment.2# Importantly if two segments could be the parent segment of a segment this test3# should cover the case where a new parent replaces the old parent and the case4# where an old parent is not replaced by a new parent.5 6# RUN: yaml2obj %s -o %t7# RUN: llvm-objcopy %t %t28# RUN: llvm-readobj --program-headers %t2 | FileCheck %s9 10!ELF11FileHeader:12  Class:           ELFCLASS6413  Data:            ELFDATA2LSB14  Type:            ET_EXEC15  Machine:         EM_X86_6416Sections:17  - Name:            .text18    Type:            SHT_PROGBITS19    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]20    AddressAlign:    0x100021    Size:            409622  - Name:            .text223    Type:            SHT_PROGBITS24    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]25    AddressAlign:    0x100026    Size:            409627  - Name:            .text328    Type:            SHT_PROGBITS29    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]30    AddressAlign:    0x100031    Size:            409632  - Name:            .text433    Type:            SHT_PROGBITS34    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]35    AddressAlign:    0x100036    Size:            409637  - Name:            .text538    Type:            SHT_PROGBITS39    Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]40    AddressAlign:    0x100041    Size:            409642ProgramHeaders:43  - Type:     PT_LOAD44    Flags:    [ PF_X, PF_R ]45    FirstSec: .text446    LastSec:  .text547  - Type:     PT_LOAD48    Flags:    [ PF_X, PF_R ]49    FirstSec: .text350    LastSec:  .text551  - Type:     PT_LOAD52    Flags:    [ PF_X, PF_R ]53    FirstSec: .text54    LastSec:  .text555  - Type:     PT_LOAD56    Flags:    [ PF_X, PF_R ]57    FirstSec: .text258    LastSec:  .text559 60#CHECK:     ProgramHeaders [61#CHECK-NEXT:  ProgramHeader {62#CHECK-NEXT:    Type: PT_LOAD (0x1)63#CHECK-NEXT:    Offset: 0x400064#CHECK-NEXT:    VirtualAddress: 0x065#CHECK-NEXT:    PhysicalAddress: 0x066#CHECK-NEXT:    FileSize: 819267#CHECK-NEXT:    MemSize: 819268#CHECK-NEXT:    Flags [ (0x5)69#CHECK-NEXT:      PF_R (0x4)70#CHECK-NEXT:      PF_X (0x1)71#CHECK-NEXT:    ]72#CHECK-NEXT:    Alignment: 409673#CHECK-NEXT:  }74#CHECK-NEXT:  ProgramHeader {75#CHECK-NEXT:    Type: PT_LOAD (0x1)76#CHECK-NEXT:    Offset: 0x300077#CHECK-NEXT:    VirtualAddress: 0x078#CHECK-NEXT:    PhysicalAddress: 0x079#CHECK-NEXT:    FileSize: 1228880#CHECK-NEXT:    MemSize: 1228881#CHECK-NEXT:    Flags [ (0x5)82#CHECK-NEXT:      PF_R (0x4)83#CHECK-NEXT:      PF_X (0x1)84#CHECK-NEXT:    ]85#CHECK-NEXT:    Alignment: 409686#CHECK-NEXT:  }87#CHECK-NEXT:  ProgramHeader {88#CHECK-NEXT:    Type: PT_LOAD (0x1)89#CHECK-NEXT:    Offset: 0x100090#CHECK-NEXT:    VirtualAddress: 0x091#CHECK-NEXT:    PhysicalAddress: 0x092#CHECK-NEXT:    FileSize: 2048093#CHECK-NEXT:    MemSize: 2048094#CHECK-NEXT:    Flags [ (0x5)95#CHECK-NEXT:      PF_R (0x4)96#CHECK-NEXT:      PF_X (0x1)97#CHECK-NEXT:    ]98#CHECK-NEXT:    Alignment: 409699#CHECK-NEXT:  }100#CHECK-NEXT:  ProgramHeader {101#CHECK-NEXT:    Type: PT_LOAD (0x1)102#CHECK-NEXT:    Offset: 0x2000103#CHECK-NEXT:    VirtualAddress: 0x0104#CHECK-NEXT:    PhysicalAddress: 0x0105#CHECK-NEXT:    FileSize: 16384106#CHECK-NEXT:    MemSize: 16384107#CHECK-NEXT:    Flags [ (0x5)108#CHECK-NEXT:      PF_R (0x4)109#CHECK-NEXT:      PF_X (0x1)110#CHECK-NEXT:    ]111#CHECK-NEXT:    Alignment: 4096112#CHECK-NEXT:  }113#CHECK-NEXT:]114