## Show that llvm-objcopy extracts section contents into files specified by ## --dump-section. # RUN: yaml2obj %s -o %t ## Extract section contents into files. # RUN: llvm-objcopy --dump-section __TEXT,__text=%t.dump.text \ # RUN: --dump-section __DATA,__data=%t.dump.data %t # RUN: od -t x1 %t.dump.text | FileCheck %s --check-prefix=TEXT-CONTENT # RUN: wc -c %t.dump.text | FileCheck %s --check-prefix=TEXT-SIZE # RUN: od -t x1 %t.dump.data | FileCheck %s --check-prefix=DATA-CONTENT # RUN: wc -c %t.dump.data | FileCheck %s --check-prefix=DATA-SIZE # TEXT-CONTENT: 0000000 aa bb cc dd # TEXT-SIZE: 4 # DATA-CONTENT: 0000000 ee ff ee ff # DATA-SIZE: 4 ## Error case: A non-existent section name. # RUN: not llvm-objcopy --dump-section __TEXT,__foo=%t.no-such-section %t 2>&1 \ # RUN: | FileCheck %s -DINPUT=%t --check-prefix=NO-SUCH-SECTION # NO-SUCH-SECTION: error: '[[INPUT]]': section '__TEXT,__foo' not found --- !mach-o FileHeader: magic: 0xFEEDFACF cputype: 0x01000007 cpusubtype: 0x00000003 filetype: 0x00000001 ncmds: 1 sizeofcmds: 312 flags: 0x00002000 reserved: 0x00000000 LoadCommands: - cmd: LC_SEGMENT_64 cmdsize: 312 segname: '' vmaddr: 0 vmsize: 12 fileoff: 344 filesize: 12 maxprot: 7 initprot: 7 nsects: 3 flags: 0 Sections: - sectname: __text segname: __TEXT addr: 0x0000000000000000 content: 'AABBCCDD' size: 4 offset: 344 align: 0 reloff: 0x00000000 nreloc: 0 flags: 0x80000400 reserved1: 0x00000000 reserved2: 0x00000000 - sectname: __data segname: __DATA addr: 0x0000000000000004 content: 'EEFFEEFF' size: 4 offset: 348 align: 0 reloff: 0x00000000 nreloc: 0 flags: 0x00000000 reserved1: 0x00000000 reserved2: 0x00000000 - sectname: __const segname: __TEXT addr: 0x0000000000000008 content: 'EEFFEEFF' size: 4 offset: 352 align: 0 reloff: 0x00000000 nreloc: 0 flags: 0x00000000 reserved1: 0x00000000 reserved2: 0x00000000