• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# RUN: yaml2obj %s > %t
2# RUN: cp %t %t1
3
4# RUN: llvm-objcopy -R .test2 %t %t2
5# RUN: llvm-readobj -file-headers -sections %t2 | FileCheck %s
6
7# Verify that the first run of llvm-objcopy
8# has not modified the input binary.
9# RUN: cmp %t %t1
10
11# RUN: llvm-objcopy -remove-section=.test2 %t1 %t3
12# RUN: cmp %t2 %t3
13
14!ELF
15FileHeader:
16  Class:           ELFCLASS64
17  Data:            ELFDATA2LSB
18  Type:            ET_REL
19  Machine:         EM_X86_64
20Sections:
21  - Name:            .test1
22    Type:            SHT_PROGBITS
23    Flags:           [ ]
24  - Name:            .test2
25    Type:            SHT_PROGBITS
26    Flags:           [ ]
27  - Name:            .test3
28    Type:            SHT_PROGBITS
29    Flags:           [ ]
30
31# CHECK: SectionHeaderCount: 6
32
33# CHECK: Sections [
34# CHECK:   Section {
35# CHECK:     Index: 0
36# CHECK:     Name:  (0)
37# CHECK:     Type: SHT_NULL (0x0)
38# CHECK:     Flags [ (0x0)
39# CHECK:     ]
40# CHECK:     Address: 0x0
41# CHECK:     Offset:
42# CHECK:     Size:
43# CHECK:     Link: 0
44# CHECK:     Info: 0
45# CHECK:     AddressAlignment: 0
46# CHECK:     EntrySize: 0
47# CHECK:   }
48# CHECK:   Section {
49# CHECK:     Index: 1
50# CHECK:     Name: .test1
51# CHECK:     Type: SHT_PROGBITS (0x1)
52# CHECK:     Flags [ (0x0)
53# CHECK:     ]
54# CHECK:     Address: 0x0
55# CHECK:     Offset:
56# CHECK:     Size:
57# CHECK:     Link: 0
58# CHECK:     Info: 0
59# CHECK:     AddressAlignment: 0
60# CHECK:     EntrySize: 0
61# CHECK:   }
62# CHECK:   Section {
63# CHECK:     Index: 2
64# CHECK:     Name: .test3
65# CHECK:     Type: SHT_PROGBITS (0x1)
66# CHECK:     Flags [ (0x0)
67# CHECK:     ]
68# CHECK:     Address: 0x0
69# CHECK:     Offset:
70# CHECK:     Size:
71# CHECK:     Link: 0
72# CHECK:     Info: 0
73# CHECK:     AddressAlignment: 0
74# CHECK:     EntrySize: 0
75# CHECK:   }
76# CHECK:   Section {
77# CHECK:     Index: 3
78# CHECK:     Name: .symtab
79# CHECK:     Type: SHT_SYMTAB (0x2)
80# CHECK:     Flags [ (0x0)
81# CHECK:     ]
82# CHECK:     Address: 0x0
83# CHECK:     Offset:
84# CHECK:     Size:
85# CHECK:     Link: 4
86# CHECK:     Info: 1
87# CHECK:     AddressAlignment: 8
88# CHECK:     EntrySize: 24
89# CHECK:   }
90# CHECK:   Section {
91# CHECK:     Index: 4
92# CHECK:     Name: .strtab
93# CHECK:     Type: SHT_STRTAB (0x3)
94# CHECK:     Flags [ (0x0)
95# CHECK:     ]
96# CHECK:     Address: 0x0
97# CHECK:     Offset:
98# CHECK:     Size:
99# CHECK:     Link: 0
100# CHECK:     Info: 0
101# CHECK:     AddressAlignment: 1
102# CHECK:     EntrySize: 0
103# CHECK:   }
104# CHECK:   Section {
105# CHECK:     Index: 5
106# CHECK:     Name: .shstrtab
107# CHECK:     Type: SHT_STRTAB (0x3)
108# CHECK:     Flags [ (0x0)
109# CHECK:     ]
110# CHECK:     Address: 0x0
111# CHECK:     Offset:
112# CHECK:     Size:
113# CHECK:     Link: 0
114# CHECK:     Info: 0
115# CHECK:     AddressAlignment: 1
116# CHECK:     EntrySize: 0
117# CHECK:   }
118# CHECK: ]
119