dump-section-before-add-remove.test 1.68 KB
# RUN: yaml2obj %s -o %t

## Verify that section is dumped before it is removed.
# RUN: llvm-objcopy --dump-section __TEXT,__text=%t1.dump --remove-section __TEXT,__text %t %t1
# RUN: FileCheck %s --input-file=%t1.dump --check-prefix=CONTENTS --implicit-check-not={{.}}

# CONTENTS: abcd

## Verify that the newly added section is not dumped.
# RUN: echo CAFE > %t2.txt
# RUN: not llvm-objcopy --dump-section __TEXT,__const=%t2.dump --add-section __TEXT,__const=%t2.txt %t %t2 2>&1 | \
# RUN:     FileCheck %s --check-prefix=NODUMP -DINPUT=%t

# NODUMP: error: '[[INPUT]]': section '__TEXT,__const' 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:    '61626364'
        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