xref: /llvm-project/llvm/test/tools/llvm-objcopy/MachO/bitcode-strip-remove-nonempty-segment.test (revision 59172194389c92f14057cfe97d6c0b26a4b1a6f1)
1*59172194SRichard Howell## Test bitcode segment is not removed when not empty.
2*59172194SRichard Howell# RUN: yaml2obj %s -o %t
3*59172194SRichard Howell# RUN: llvm-bitcode-strip -r %t -o %t2
4*59172194SRichard Howell# RUN: llvm-readobj --macho-segment --sections %t2 | FileCheck --implicit-check-not=Name: %s
5*59172194SRichard Howell
6*59172194SRichard Howell# CHECK:      Name: __text
7*59172194SRichard Howell# CHECK-NEXT: Segment: __TEXT
8*59172194SRichard Howell# CHECK:      Name: __bundle
9*59172194SRichard Howell# CHECK-NEXT: Segment: __DATA
10*59172194SRichard Howell# CHECK:      Name: __notbundle
11*59172194SRichard Howell# CHECK-NEXT: Segment: __LLVM
12*59172194SRichard Howell# CHECK:      Cmd: LC_SEGMENT_64
13*59172194SRichard Howell# CHECK-NEXT: Name: __TEXT
14*59172194SRichard Howell# CHECK:      Cmd: LC_SEGMENT_64
15*59172194SRichard Howell# CHECK-NEXT: Name: __DATA
16*59172194SRichard Howell# CHECK:      Cmd: LC_SEGMENT_64
17*59172194SRichard Howell# CHECK-NEXT: Name: __LLVM
18*59172194SRichard Howell
19*59172194SRichard Howell--- !mach-o
20*59172194SRichard HowellFileHeader:
21*59172194SRichard Howell  magic:           0xFEEDFACF
22*59172194SRichard Howell  cputype:         0x01000007
23*59172194SRichard Howell  cpusubtype:      0x00000003
24*59172194SRichard Howell  filetype:        0x00000001
25*59172194SRichard Howell  ncmds:           3
26*59172194SRichard Howell  sizeofcmds:      536
27*59172194SRichard Howell  flags:           0x00002000
28*59172194SRichard Howell  reserved:        0x00000000
29*59172194SRichard HowellLoadCommands:
30*59172194SRichard Howell  - cmd:             LC_SEGMENT_64
31*59172194SRichard Howell    cmdsize:         152
32*59172194SRichard Howell    segname:         __TEXT
33*59172194SRichard Howell    vmaddr:          0
34*59172194SRichard Howell    vmsize:          4
35*59172194SRichard Howell    fileoff:         568
36*59172194SRichard Howell    filesize:        4
37*59172194SRichard Howell    maxprot:         7
38*59172194SRichard Howell    initprot:        7
39*59172194SRichard Howell    nsects:          1
40*59172194SRichard Howell    flags:           0
41*59172194SRichard Howell    Sections:
42*59172194SRichard Howell      - sectname:        __text
43*59172194SRichard Howell        segname:         __TEXT
44*59172194SRichard Howell        addr:            0x0000000000000000
45*59172194SRichard Howell        content:         'AABBCCDD'
46*59172194SRichard Howell        size:            4
47*59172194SRichard Howell        offset:          568
48*59172194SRichard Howell        align:           0
49*59172194SRichard Howell        reloff:          0x00000000
50*59172194SRichard Howell        nreloc:          0
51*59172194SRichard Howell        flags:           0x80000400
52*59172194SRichard Howell        reserved1:       0x00000000
53*59172194SRichard Howell        reserved2:       0x00000000
54*59172194SRichard Howell        reserved3:       0x00000000
55*59172194SRichard Howell  - cmd:             LC_SEGMENT_64
56*59172194SRichard Howell    cmdsize:         152
57*59172194SRichard Howell    segname:         __DATA
58*59172194SRichard Howell    vmaddr:          4
59*59172194SRichard Howell    vmsize:          4
60*59172194SRichard Howell    fileoff:         572
61*59172194SRichard Howell    filesize:        4
62*59172194SRichard Howell    maxprot:         7
63*59172194SRichard Howell    initprot:        7
64*59172194SRichard Howell    nsects:          1
65*59172194SRichard Howell    flags:           0
66*59172194SRichard Howell    Sections:
67*59172194SRichard Howell      - sectname:        __bundle
68*59172194SRichard Howell        segname:         __DATA
69*59172194SRichard Howell        addr:            0x0000000000000004
70*59172194SRichard Howell        content:         'DDAADDAA'
71*59172194SRichard Howell        size:            4
72*59172194SRichard Howell        offset:          572
73*59172194SRichard Howell        align:           0
74*59172194SRichard Howell        reloff:          0x00000000
75*59172194SRichard Howell        nreloc:          0
76*59172194SRichard Howell        flags:           0x00000000
77*59172194SRichard Howell        reserved1:       0x00000000
78*59172194SRichard Howell        reserved2:       0x00000000
79*59172194SRichard Howell        reserved3:       0x00000000
80*59172194SRichard Howell  - cmd:             LC_SEGMENT_64
81*59172194SRichard Howell    cmdsize:         232
82*59172194SRichard Howell    segname:         __LLVM
83*59172194SRichard Howell    vmaddr:          8
84*59172194SRichard Howell    vmsize:          8
85*59172194SRichard Howell    fileoff:         576
86*59172194SRichard Howell    filesize:        8
87*59172194SRichard Howell    maxprot:         7
88*59172194SRichard Howell    initprot:        7
89*59172194SRichard Howell    nsects:          2
90*59172194SRichard Howell    flags:           0
91*59172194SRichard Howell    Sections:
92*59172194SRichard Howell      - sectname:        __bundle
93*59172194SRichard Howell        segname:         __LLVM
94*59172194SRichard Howell        addr:            0x0000000000000008
95*59172194SRichard Howell        content:         'EEFFEEFF'
96*59172194SRichard Howell        size:            4
97*59172194SRichard Howell        offset:          576
98*59172194SRichard Howell        align:           0
99*59172194SRichard Howell        reloff:          0x00000000
100*59172194SRichard Howell        nreloc:          0
101*59172194SRichard Howell        flags:           0x00000000
102*59172194SRichard Howell        reserved1:       0x00000000
103*59172194SRichard Howell        reserved2:       0x00000000
104*59172194SRichard Howell        reserved3:       0x00000000
105*59172194SRichard Howell      - sectname:        __notbundle
106*59172194SRichard Howell        segname:         __LLVM
107*59172194SRichard Howell        addr:            0x0000000000000008
108*59172194SRichard Howell        content:         'EEFFEEFF'
109*59172194SRichard Howell        size:            4
110*59172194SRichard Howell        offset:          580
111*59172194SRichard Howell        align:           0
112*59172194SRichard Howell        reloff:          0x00000000
113*59172194SRichard Howell        nreloc:          0
114*59172194SRichard Howell        flags:           0x00000000
115*59172194SRichard Howell        reserved1:       0x00000000
116*59172194SRichard Howell        reserved2:       0x00000000
117*59172194SRichard Howell        reserved3:       0x00000000
118