| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 
 | # RUN: yaml2obj %s -o %t
## Show that llvm-objcopy copies relocation entries where r_extern = 0.
# RUN: llvm-objcopy %t %t2
# RUN: cmp %t %t2
## Show that llvm-objcopy updates section indices properly.
# RUN: llvm-objcopy --remove-section=__DATA,__foo %t %t3
# RUN: llvm-objdump --macho --reloc %t3 | FileCheck %s
# CHECK:      Relocation information (__DATA,__bar) 2 entries
# CHECK-NEXT: address  pcrel length extern type    scattered symbolnum/value
# CHECK-NEXT: 00000000 False quad   False  SUB     False     2 (__DATA,__bar)
# CHECK-NEXT: 00000000 False quad   False  UNSIGND False     1 (__TEXT,__text)
--- !mach-o
FileHeader:
  magic:           0xFEEDFACF
  cputype:         0x01000007
  cpusubtype:      0x00000003
  filetype:        0x00000001
  ncmds:           1
  sizeofcmds:      312
  flags:           0x00000000
  reserved:        0x00000000
LoadCommands:
  - cmd:             LC_SEGMENT_64
    cmdsize:         312
    segname:         ''
    vmaddr:          0
    vmsize:          24
    fileoff:         344
    filesize:        24
    maxprot:         7
    initprot:        7
    nsects:          3
    flags:           0
    Sections:
      - sectname:        __text
        segname:         __TEXT
        addr:            0x0000000000000000
        size:            8
        offset:          0x00000158
        align:           0
        reloff:          0x00000000
        nreloc:          0
        flags:           0x80000000
        reserved1:       0x00000000
        reserved2:       0x00000000
        reserved3:       0x00000000
        content:         '0000000000000000'
      - sectname:        __foo
        segname:         __DATA
        addr:            0x0000000000000008
        size:            8
        offset:          0x00000160
        align:           0
        reloff:          0x00000000
        nreloc:          0
        flags:           0x00000000
        reserved1:       0x00000000
        reserved2:       0x00000000
        reserved3:       0x00000000
        content:         '0000000000000000'
      - sectname:        __bar
        segname:         __DATA
        addr:            0x0000000000000010
        size:            8
        offset:          0x00000168
        align:           0
        reloff:          0x00000170
        nreloc:          2
        flags:           0x00000000
        reserved1:       0x00000000
        reserved2:       0x00000000
        reserved3:       0x00000000
        content:         F0FFFFFFFFFFFFFF
        relocations:
          - address:         0x00000000
            symbolnum:       3
            pcrel:           false
            length:          3
            extern:          false
            type:            5
            scattered:       false
            value:           0
          - address:         0x00000000
            symbolnum:       1
            pcrel:           false
            length:          3
            extern:          false
            type:            0
            scattered:       false
            value:           0
...
 |