brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.9 KiB · 998b7e8 Raw
120 lines · plain
1## Show that llvm-objcopy adds a new section into a 64-bit object if2## --add-section is given.3 4# RUN: yaml2obj %s -o %t5# RUN: echo -n abcdefg > %t.data6 7## Case 1: Add a new section into an existing segment.8# RUN: llvm-objcopy --add-section __TEXT,__bar=%t.data %t %t.out19# RUN: llvm-readobj --sections --section-data %t.out1 \10# RUN:   | FileCheck %s --check-prefixes=COMMON,CASE111 12## Case 2: Add a new section into a nonexistent segment.13# RUN: llvm-objcopy --add-section __FOO,__bar=%t.data %t %t.out214# RUN: llvm-readobj --sections --section-data %t.out2 \15# RUN:   | FileCheck %s --check-prefixes=COMMON,CASE216# RUN: llvm-readobj --sections --section-data %t.out2 \17# RUN:   | FileCheck %s --check-prefixes=COMMON,CASE218 19## Case 3: Add a new section into an existing segment using /dev/null as an input.20# RUN: llvm-objcopy --add-section __TEXT,__bar=/dev/null %t %t.out321# RUN: llvm-readobj --sections --section-data %t.out3 \22# RUN:   | FileCheck %s --check-prefixes=COMMON,CASE323 24--- !mach-o25FileHeader:26  magic:           0xFEEDFACF27  cputype:         0x0100000728  cpusubtype:      0x0000000329  filetype:        0x0000000130  ncmds:           131  sizeofcmds:      15232  flags:           0x0000200033  reserved:        0x0000000034LoadCommands:35  - cmd:             LC_SEGMENT_6436    cmdsize:         15237    segname:         __TEXT38    vmaddr:          039    vmsize:          440    fileoff:         18441    filesize:        442    maxprot:         743    initprot:        744    nsects:          145    flags:           046    Sections:47      - sectname:        __text48        segname:         __TEXT49        addr:            0x000000000000000050        content:         'AABBCCDD'51        size:            452        offset:          18453        align:           054        reloff:          0x0000000055        nreloc:          056        flags:           0x8000040057        reserved1:       0x0000000058        reserved2:       0x0000000059        reserved3:       0x0000000060 61# COMMON:         Index: 062# COMMON-NEXT:    Name: __text (5F 5F 74 65 78 74 00 00 00 00 00 00 00 00 00 00)63# COMMON-NEXT:    Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)64# COMMON-NEXT:    Address: 0x065# COMMON-NEXT:    Size: 0x466# COMMON-NEXT:    Offset:67# COMMON-NEXT:    Alignment: 068# COMMON-NEXT:    RelocationOffset: 0x069# COMMON-NEXT:    RelocationCount: 070# COMMON-NEXT:    Type: Regular (0x0)71# COMMON-NEXT:    Attributes [ (0x800004)72# COMMON-NEXT:      PureInstructions (0x800000)73# COMMON-NEXT:      SomeInstructions (0x4)74# COMMON-NEXT:    ]75# COMMON-NEXT:    Reserved1: 0x076# COMMON-NEXT:    Reserved2: 0x077# COMMON-NEXT:    Reserved3: 0x078# COMMON-NEXT:    SectionData (79# COMMON-NEXT:      0000: AABBCCDD                             |....|80# COMMON-NEXT:    )81 82# COMMON:         Index: 183# COMMON-NEXT:    Name: __bar (5F 5F 62 61 72 00 00 00 00 00 00 00 00 00 00 00)84 85# CASE1-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)86# CASE1-NEXT:     Address: 0x487# CASE1-NEXT:     Size: 0x788# CASE1-NEXT:     Offset: 26889 90# CASE2:          Segment: __FOO (5F 5F 46 4F 4F 00 00 00 00 00 00 00 00 00 00 00)91# CASE2-NEXT:     Address: 0xB892# CASE2-NEXT:     Size: 0x793# CASE2-NEXT:     Offset: 34094 95# CASE3-NEXT:     Segment: __TEXT (5F 5F 54 45 58 54 00 00 00 00 00 00 00 00 00 00)96# CASE3-NEXT:     Address: 0x497# CASE3-NEXT:     Size: 0x098# CASE3-NEXT:     Offset: 26899 100# COMMON-NEXT:    Alignment: 0101# COMMON-NEXT:    RelocationOffset: 0x0102# COMMON-NEXT:    RelocationCount: 0103# COMMON-NEXT:    Type: Regular (0x0)104# COMMON-NEXT:    Attributes [ (0x0)105# COMMON-NEXT:    ]106# COMMON-NEXT:    Reserved1: 0x0107# COMMON-NEXT:    Reserved2: 0x0108# COMMON-NEXT:    Reserved3: 0x0109 110# CASE1-NEXT:     SectionData (111# CASE1-NEXT:       0000: 61626364 656667                      |abcdefg|112# CASE1-NEXT:     )113 114# CASE2-NEXT:     SectionData (115# CASE2-NEXT:       0000: 61626364 656667                      |abcdefg|116# CASE2-NEXT:     )117 118# CASE3-NEXT:     SectionData (119# CASE3-NEXT:     )120