17cb25f53SDerek Schuff## Test --only-section.
27cb25f53SDerek Schuff# RUN: yaml2obj %s -o %t
3*e4b2f305SSam Clegg# RUN: llvm-objcopy --only-section=foo %t %t2
47cb25f53SDerek Schuff# RUN: obj2yaml %t2 | FileCheck --implicit-check-not TYPE --implicit-check-not linking %s
57cb25f53SDerek Schuff
67cb25f53SDerek Schuff## Test that it's the same with only-section + keep-section (for the same section).
7*e4b2f305SSam Clegg# RUN: llvm-objcopy --only-section=foo --keep-section=foo %t %t2
87cb25f53SDerek Schuff# RUN: obj2yaml %t2 | FileCheck --implicit-check-not TYPE --implicit-check-not linking %s
97cb25f53SDerek Schuff
107cb25f53SDerek Schuff## Also test that only-section overrides remove-section.
11*e4b2f305SSam Clegg# RUN: llvm-objcopy --only-section=foo --remove-section=foo %t %t2
127cb25f53SDerek Schuff# RUN: obj2yaml %t2 | FileCheck --implicit-check-not linking %s
137cb25f53SDerek Schuff
14*e4b2f305SSam Clegg## This file has both known and custom sections. Check that only the foo section is left.
157cb25f53SDerek Schuff# CHECK:      Sections:
167cb25f53SDerek Schuff# CHECK-NEXT:   - Type: CUSTOM
17*e4b2f305SSam Clegg# CHECK-NEXT:     Name: foo
18*e4b2f305SSam Clegg# CHECK-NEXT:     Payload: DEADBEEF
19*e4b2f305SSam Clegg# CHECK-NEXT: ...
207cb25f53SDerek Schuff
217cb25f53SDerek Schuff## Test that only-section + keep-section keeps both sections.
22*e4b2f305SSam Clegg# RUN: llvm-objcopy --only-section=foo --keep-section=linking %t %t2
237cb25f53SDerek Schuff# RUN: obj2yaml %t2 | FileCheck --implicit-check-not=TYPE --check-prefix=KEEP %s
24*e4b2f305SSam Clegg# KEEP: Name: foo
257cb25f53SDerek Schuff# KEEP: Name: linking
267cb25f53SDerek Schuff
277cb25f53SDerek Schuff--- !WASM
287cb25f53SDerek SchuffFileHeader:
297cb25f53SDerek Schuff  Version: 0x00000001
307cb25f53SDerek SchuffSections:
31*e4b2f305SSam Clegg  - Type: CUSTOM
32*e4b2f305SSam Clegg    Name: foo
33*e4b2f305SSam Clegg    Payload: DEADBEEF
347cb25f53SDerek Schuff  - Type: TYPE
357cb25f53SDerek Schuff    Signatures:
367cb25f53SDerek Schuff      - Index: 0
377cb25f53SDerek Schuff        ParamTypes:
387cb25f53SDerek Schuff          - I32
397cb25f53SDerek Schuff        ReturnTypes:
407cb25f53SDerek Schuff          - F32
417cb25f53SDerek Schuff  - Type: CUSTOM
427cb25f53SDerek Schuff    Name: linking
437cb25f53SDerek Schuff    Version: 2
44