xref: /llvm-project/llvm/test/tools/llvm-objcopy/wasm/remove-section.test (revision c9dd1cc6f0536c6547f322107cd27cd953913f5c)
1b2c44de9SDerek Schuff## Test the --remove-section flag.
2b2c44de9SDerek Schuff# RUN: yaml2obj %s -o %t
3b2c44de9SDerek Schuff# RUN: llvm-objcopy -R producers %t %t2
4b2c44de9SDerek Schuff# RUN: obj2yaml %t2 | FileCheck --implicit-check-not=producers %s
5b2c44de9SDerek Schuff## Check that the producers section has been removed, but not the type section.
6b2c44de9SDerek Schuff# CHECK: TYPE
7b2c44de9SDerek Schuff
8b2c44de9SDerek Schuff## Requests to remove nonexistent sections are silently ignored.
901b5cc28SKadir Cetinkaya# RUN: llvm-objcopy --remove-section=nonexistent=%t.sec %t 2>&1 | count 0
10b2c44de9SDerek Schuff
11*c9dd1cc6SDerek Schuff## Remove the type section.
12*c9dd1cc6SDerek Schuff# RUN: llvm-objcopy -R TYPE %t %t3
13*c9dd1cc6SDerek Schuff# RUN: obj2yaml %t3 | FileCheck --check-prefix=REMOVETYPE --implicit-check-not=TYPE %s
14*c9dd1cc6SDerek Schuff## Check that the producers section is still there.
15*c9dd1cc6SDerek Schuff# REMOVETYPE: producers
16*c9dd1cc6SDerek Schuff
17b2c44de9SDerek Schuff--- !WASM
18b2c44de9SDerek SchuffFileHeader:
19b2c44de9SDerek Schuff  Version: 0x00000001
20b2c44de9SDerek SchuffSections:
21b2c44de9SDerek Schuff  - Type: TYPE
22b2c44de9SDerek Schuff    Signatures:
23b2c44de9SDerek Schuff      - Index: 0
24b2c44de9SDerek Schuff        ParamTypes:
25b2c44de9SDerek Schuff          - I32
26b2c44de9SDerek Schuff        ReturnTypes:
27b2c44de9SDerek Schuff          - F32
28b2c44de9SDerek Schuff  - Type: CUSTOM
29b2c44de9SDerek Schuff    Name: producers
30b2c44de9SDerek Schuff    Tools:
31b2c44de9SDerek Schuff      - Name:   clang
32b2c44de9SDerek Schuff        Version: 9.0.0
33