OSDN Git Service

[llvm-objcopy] Implement support for section groups
[android-x86/external-llvm.git] / test / tools / llvm-objcopy / group-big-endian.test
1 # RUN: yaml2obj %s > %t
2 # RUN: llvm-objcopy -remove-section=.text.bar %t %t2
3 # RUN: llvm-readobj -elf-section-groups %t2 | FileCheck %s
4
5 # In this test the section .text.bar is getting removed, as a result, 
6 # the indices of the sections which go after .text.bar will change, 
7 # thus the fields Link, Info and the content of .group should be updated.
8
9 # CHECK:           Name: .group
10 # CHECK-NEXT:      Index: 1
11 # CHECK-NEXT:      Link: 3
12 # CHECK-NEXT:      Info: 2
13 # CHECK-NEXT:      Type: COMDAT (0x1)
14 # CHECK-NEXT:      Signature: foo
15 # CHECK:           .text.foo (2)
16
17 --- !ELF
18 FileHeader:      
19   Class:           ELFCLASS64
20   Data:            ELFDATA2MSB
21   Type:            ET_REL
22   Machine:         EM_X86_64
23 Sections:        
24   - Name:            .group
25     Type:            SHT_GROUP
26     Link:            .symtab
27     AddressAlign:    0x0000000000000004
28     Info:            foo
29     Members:         
30       - SectionOrType:   GRP_COMDAT
31       - SectionOrType:   .text.foo
32   - Name:            .text.bar
33     Type:            SHT_PROGBITS
34     Flags:           [ SHF_ALLOC, SHF_EXECINSTR ]
35     AddressAlign:    0x0000000000000010
36   - Name:            .text.foo
37     Type:            SHT_PROGBITS
38     Flags:           [ SHF_ALLOC, SHF_EXECINSTR, SHF_GROUP ]
39     AddressAlign:    0x0000000000000010
40 Symbols:
41   Local:           
42     - Name:            .text.bar
43       Type:            STT_SECTION
44       Section:         .text.bar
45     - Name:            .text.foo
46       Type:            STT_SECTION
47       Section:         .text.foo         
48   Weak:            
49     - Name:            bar
50       Type:            STT_FUNC
51       Section:         .text.bar
52       Size:            0x0000000000000000
53     - Name:            foo
54       Type:            STT_FUNC
55       Section:         .text.foo
56       Size:            0x0000000000000000