[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / tools / yaml2obj / elf-override-shoffset.yaml
blob26ef2862de06f56b1aca13c238121660bd89da09
1 ## Check we are able to set custom sh_offset field
2 ## for different sections.
4 # RUN: yaml2obj --docnum=1 %s -o %t1
5 # RUN: llvm-readelf --sections %t1 | FileCheck %s --check-prefix=CASE1
7 # CASE1:      Section Headers:
8 # CASE1-NEXT:  [Nr] Name           Type     Address Off
9 # CASE1-NEXT:  [ 0]                NULL     {{.*}}  000000
10 # CASE1-NEXT:  [ 1] .dynsym        DYNSYM   {{.*}}  000001
11 # CASE1-NEXT:  [ 2] .symtab        SYMTAB   {{.*}}  000002
12 # CASE1-NEXT:  [ 3] .dynamic       DYNAMIC  {{.*}}  000003
13 # CASE1-NEXT:  [ 4] .rela          RELA     {{.*}}  000004
14 # CASE1-NEXT:  [ 5] .nobits        NOBITS   {{.*}}  000005
15 # CASE1-NEXT:  [ 6] .group         GROUP    {{.*}}  000006
16 # CASE1-NEXT:  [ 7] .gnu.version   VERSYM   {{.*}}  000007
17 # CASE1-NEXT:  [ 8] .gnu.version_r VERNEED  {{.*}}  000008
18 # CASE1-NEXT:  [ 9] .gnu.version_d VERDEF   {{.*}}  000009
19 # CASE1-NEXT:  [10] .regular       PROGBITS {{.*}}  00000a
20 # CASE1-NEXT:  [11] .strtab        STRTAB   {{.*}}  00000b
22 --- !ELF
23 FileHeader:
24   Class:   ELFCLASS64
25   Data:    ELFDATA2LSB
26   Type:    ET_REL
27   Machine: EM_X86_64
28 Sections:
29   - Name: .dynsym
30     Type: SHT_DYNSYM
31     ShOffset: 0x000000001
32   - Name: .symtab
33     Type: SHT_SYMTAB
34     ShOffset: 0x000000002
35   - Name: .dynamic
36     Type: SHT_DYNAMIC
37     ShOffset: 0x000000003
38   - Name: .rela
39     Type: SHT_RELA
40     ShOffset: 0x000000004
41   - Name: .nobits
42     Type: SHT_NOBITS
43     ShOffset: 0x000000005
44   - Name: .group
45     Type: SHT_GROUP
46     Info: 0
47     ShOffset: 0x000000006
48     Members:
49   - Name: .gnu.version
50     Type: SHT_GNU_versym
51     Entries: [ ]
52     ShOffset: 0x000000007
53   - Name: .gnu.version_r
54     Type: SHT_GNU_verneed
55     Info: 0x0000000000000001
56     ShOffset: 0x000000008
57     Dependencies:
58   - Name: .gnu.version_d
59     Type: SHT_GNU_verdef
60     Info: 0x0000000000000001
61     ShOffset: 0x000000009
62     Entries:
63   - Name: .regular
64     Type: SHT_PROGBITS
65     ShOffset: 0x00000000A
66   - Name: .strtab
67     Type: SHT_STRTAB
68     ShOffset: 0x00000000B
70 ## Here we check that defining ShOffset does not actually change
71 ## the offset at which section data is placed and also does
72 ## not affect file size.
74 # RUN: yaml2obj --docnum=2 %s -o %t2
75 # RUN: yaml2obj --docnum=3 %s -o %t3
76 # RUN: od -t x1 -v %t2 > %t.txt
77 # RUN: od -t x1 -v %t3 >> %t.txt
78 # RUN: FileCheck %s --input-file=%t.txt --ignore-case --check-prefix=CASE2
80 # CASE2: [[OFFSET:.*]] fe fe fe fe fe fe fe fe
81 # CASE2: [[FILESIZE:.*]]{{$}}
82 # CASE2: [[OFFSET]] fe fe fe fe fe fe fe fe
83 # CASE2: [[FILESIZE]]{{$}}
85 --- !ELF
86 FileHeader:
87   Class:   ELFCLASS64
88   Data:    ELFDATA2LSB
89   Type:    ET_REL
90   Machine: EM_X86_64
91 Sections:
92   - Name: .foo
93     Type: SHT_PROGBITS
94     Content: "fefefefefefefefe"
96 --- !ELF
97 FileHeader:
98   Class:   ELFCLASS64
99   Data:    ELFDATA2LSB
100   Type:    ET_REL
101   Machine: EM_X86_64
102 Sections:
103   - Name: .foo
104     Type: SHT_PROGBITS
105     ShOffset: 0xFFFF0000
106     Content: "fefefefefefefefe"