## Test bitcode section and segment removal. | |
# RUN: yaml2obj %s -o %t | |
# RUN: llvm-bitcode-strip -r %t -o %t2 | |
# RUN: llvm-readobj --macho-segment --sections %t2 | FileCheck --implicit-check-not=Name: %s | |
# CHECK: Name: __text | |
# CHECK-NEXT: Segment: __TEXT | |
# CHECK: Name: __bundle | |
# CHECK-NEXT: Segment: __DATA | |
# CHECK: Cmd: LC_SEGMENT_64 | |
# CHECK-NEXT: Name: __TEXT | |
# CHECK: Cmd: LC_SEGMENT_64 | |
# CHECK-NEXT: Name: __DATA | |
--- !mach-o | |
FileHeader: | |
magic: 0xFEEDFACF | |
cputype: 0x01000007 | |
cpusubtype: 0x00000003 | |
filetype: 0x00000001 | |
ncmds: 3 | |
sizeofcmds: 456 | |
flags: 0x00002000 | |
reserved: 0x00000000 | |
LoadCommands: | |
- cmd: LC_SEGMENT_64 | |
cmdsize: 152 | |
segname: __TEXT | |
vmaddr: 0 | |
vmsize: 4 | |
fileoff: 488 | |
filesize: 4 | |
maxprot: 7 | |
initprot: 7 | |
nsects: 1 | |
flags: 0 | |
Sections: | |
- sectname: __text | |
segname: __TEXT | |
addr: 0x0000000000000000 | |
content: 'AABBCCDD' | |
size: 4 | |
offset: 488 | |
align: 0 | |
reloff: 0x00000000 | |
nreloc: 0 | |
flags: 0x80000400 | |
reserved1: 0x00000000 | |
reserved2: 0x00000000 | |
reserved3: 0x00000000 | |
- cmd: LC_SEGMENT_64 | |
cmdsize: 152 | |
segname: __DATA | |
vmaddr: 4 | |
vmsize: 4 | |
fileoff: 492 | |
filesize: 4 | |
maxprot: 7 | |
initprot: 7 | |
nsects: 1 | |
flags: 0 | |
Sections: | |
- sectname: __bundle | |
segname: __DATA | |
addr: 0x0000000000000004 | |
content: 'DDAADDAA' | |
size: 4 | |
offset: 492 | |
align: 0 | |
reloff: 0x00000000 | |
nreloc: 0 | |
flags: 0x00000000 | |
reserved1: 0x00000000 | |
reserved2: 0x00000000 | |
reserved3: 0x00000000 | |
- cmd: LC_SEGMENT_64 | |
cmdsize: 152 | |
segname: __LLVM | |
vmaddr: 8 | |
vmsize: 4 | |
fileoff: 496 | |
filesize: 4 | |
maxprot: 7 | |
initprot: 7 | |
nsects: 1 | |
flags: 0 | |
Sections: | |
- sectname: __bundle | |
segname: __LLVM | |
addr: 0x0000000000000008 | |
content: 'EEFFEEFF' | |
size: 4 | |
offset: 496 | |
align: 0 | |
reloff: 0x00000000 | |
nreloc: 0 | |
flags: 0x00000000 | |
reserved1: 0x00000000 | |
reserved2: 0x00000000 | |
reserved3: 0x00000000 |