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