xref: /llvm-project/llvm/test/tools/llvm-objcopy/ELF/remove-linked-section.test (revision ada9d2d88464331a374aac1e17d685892ec78d54)
166a9d0f8SJames Henderson# RUN: yaml2obj %s -o %t.o
2*ada9d2d8SSeiya Nuta# RUN: not llvm-objcopy -R .foo %t.o %t1 2>&1 >/dev/null | FileCheck %s --check-prefix=ERR1 -DINPUT=%t.o
366a9d0f8SJames Henderson# RUN: cp %t.o %t2
4*ada9d2d8SSeiya Nuta# RUN: not llvm-strip --no-strip-all -R .foo %t2 2>&1 >/dev/null | FileCheck %s --check-prefix=ERR2 -DINPUT=%t2
566a9d0f8SJames Henderson
666a9d0f8SJames Henderson--- !ELF
766a9d0f8SJames HendersonFileHeader:
866a9d0f8SJames Henderson  Class:           ELFCLASS64
966a9d0f8SJames Henderson  Data:            ELFDATA2LSB
1066a9d0f8SJames Henderson  Type:            ET_REL
1166a9d0f8SJames Henderson  Machine:         EM_X86_64
1266a9d0f8SJames HendersonSections:
1366a9d0f8SJames Henderson  - Name:            .foo
1466a9d0f8SJames Henderson    Type:            SHT_PROGBITS
1566a9d0f8SJames Henderson  - Name:            .bar
1666a9d0f8SJames Henderson    Type:            SHT_PROGBITS
1766a9d0f8SJames Henderson    Link:            .foo
1866a9d0f8SJames Henderson
19*ada9d2d8SSeiya Nuta# ERR1: error: '[[INPUT]]': section '.foo' cannot be removed because it is referenced by the section '.bar'
20*ada9d2d8SSeiya Nuta# ERR2: error: '[[INPUT]]': section '.foo' cannot be removed because it is referenced by the section '.bar'
2166a9d0f8SJames Henderson
2266a9d0f8SJames Henderson# RUN: llvm-objcopy --allow-broken-links -R .foo %t.o %t3
2366a9d0f8SJames Henderson# RUN: llvm-readobj --sections %t3 | FileCheck %s --check-prefix=SECTIONS --implicit-check-not=.foo
2466a9d0f8SJames Henderson# RUN: cp %t.o %t4
25e4a89a1bSJames Henderson# RUN: llvm-strip --no-strip-all --allow-broken-links -R .foo %t4
2666a9d0f8SJames Henderson# RUN: llvm-readobj --sections %t4 | FileCheck %s --check-prefix=SECTIONS --implicit-check-not=.foo
2766a9d0f8SJames Henderson
2866a9d0f8SJames Henderson# SECTIONS:      Name: .bar
2966a9d0f8SJames Henderson# SECTIONS:      Link
3066a9d0f8SJames Henderson# SECTIONS-SAME: : 0
31