brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.7 KiB · 48c60d5 Raw
101 lines · yaml
1## Check we are able to set custom sh_offset field2## for different sections.3 4# RUN: yaml2obj --docnum=1 %s -o %t15# RUN: llvm-readelf --sections %t1 | FileCheck %s --check-prefix=CASE16 7# CASE1:      Section Headers:8# CASE1-NEXT:  [Nr] Name           Type     Address Off9# CASE1-NEXT:  [ 0]                NULL     {{.*}}  00000010# CASE1-NEXT:  [ 1] .dynsym        DYNSYM   {{.*}}  00000111# CASE1-NEXT:  [ 2] .symtab        SYMTAB   {{.*}}  00000212# CASE1-NEXT:  [ 3] .dynamic       DYNAMIC  {{.*}}  00000313# CASE1-NEXT:  [ 4] .rela          RELA     {{.*}}  00000414# CASE1-NEXT:  [ 5] .nobits        NOBITS   {{.*}}  00000515# CASE1-NEXT:  [ 6] .group         GROUP    {{.*}}  00000616# CASE1-NEXT:  [ 7] .gnu.version   VERSYM   {{.*}}  00000717# CASE1-NEXT:  [ 8] .gnu.version_r VERNEED  {{.*}}  00000818# CASE1-NEXT:  [ 9] .gnu.version_d VERDEF   {{.*}}  00000919# CASE1-NEXT:  [10] .regular       PROGBITS {{.*}}  00000a20# CASE1-NEXT:  [11] .strtab        STRTAB   {{.*}}  00000b21 22--- !ELF23FileHeader:24  Class: ELFCLASS6425  Data:  ELFDATA2LSB26  Type:  ET_REL27Sections:28  - Name: .dynsym29    Type: SHT_DYNSYM30    ShOffset: 0x00000000131  - Name: .symtab32    Type: SHT_SYMTAB33    ShOffset: 0x00000000234  - Name: .dynamic35    Type: SHT_DYNAMIC36    ShOffset: 0x00000000337  - Name: .rela38    Type: SHT_RELA39    ShOffset: 0x00000000440  - Name: .nobits41    Type: SHT_NOBITS42    ShOffset: 0x00000000543  - Name: .group44    Type: SHT_GROUP45    ShOffset: 0x00000000646    Members:47  - Name: .gnu.version48    Type: SHT_GNU_versym49    Entries: [ ]50    ShOffset: 0x00000000751  - Name:     .gnu.version_r52    Type:     SHT_GNU_verneed53    ShOffset: 0x00000000854    Dependencies:55  - Name: .gnu.version_d56    Type: SHT_GNU_verdef57    ShOffset: 0x00000000958    Entries:59  - Name: .regular60    Type: SHT_PROGBITS61    ShOffset: 0x00000000A62  - Name: .strtab63    Type: SHT_STRTAB64    ShOffset: 0x00000000B65 66## Here we check that defining ShOffset does not actually change67## the offset at which section data is placed and also does68## not affect file size.69 70# RUN: yaml2obj --docnum=2 %s -o %t271# RUN: yaml2obj --docnum=3 %s -o %t372# RUN: od -t x1 -v %t2 > %t.txt73# RUN: od -t x1 -v %t3 >> %t.txt74# RUN: FileCheck %s --input-file=%t.txt --ignore-case --check-prefix=CASE275 76# CASE2: [[OFFSET:.*]] fe fe fe fe fe fe fe fe77# CASE2: [[FILESIZE:.*]]{{$}}78# CASE2: [[OFFSET]] fe fe fe fe fe fe fe fe79# CASE2: [[FILESIZE]]{{$}}80 81--- !ELF82FileHeader:83  Class: ELFCLASS6484  Data:  ELFDATA2LSB85  Type:  ET_REL86Sections:87  - Name: .foo88    Type: SHT_PROGBITS89    Content: "fefefefefefefefe"90 91--- !ELF92FileHeader:93  Class: ELFCLASS6494  Data:  ELFDATA2LSB95  Type:  ET_REL96Sections:97  - Name: .foo98    Type: SHT_PROGBITS99    ShOffset: 0xFFFF0000100    Content: "fefefefefefefefe"101