blob: 6fa590b5dc576ae57d51f992067776a099dbe606 [file] [log] [blame]
# RUN: yaml2obj %s > %t
# No symbol matches, because pattern is implicitly enveloped in '^$'
# RUN: llvm-objcopy --discard-all --regex -K 'ba' %t %t2
# RUN: llvm-readobj --symbols %t2 | FileCheck %s --check-prefix=REGEX1
# Symbol 'bar' matches
# RUN: llvm-objcopy --discard-all --regex -K 'ba.*' %t %t3
# RUN: llvm-readobj --symbols %t3 | FileCheck %s --check-prefix=REGEX2
# All symbols match
# RUN: llvm-objcopy --discard-all --regex -K '.*ba.*' %t %t4
# RUN: llvm-readobj --symbols %t4 | FileCheck %s --check-prefix=REGEX3
# All symbols match
# RUN: llvm-objcopy --discard-all --regex -K '^([a-z]+)*ba.*$' %t %t5
# RUN: cmp %t4 %t5
!ELF
FileHeader:
Class: ELFCLASS64
Data: ELFDATA2LSB
Type: ET_REL
Machine: EM_X86_64
Sections:
- Name: .text
Type: SHT_PROGBITS
Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
Address: 0x1000
AddressAlign: 0x0000000000000010
Size: 64
Symbols:
Local:
- Name: foobaz
Type: STT_FUNC
Section: .text
Value: 0x1000
Size: 8
- Name: bar
Type: STT_FUNC
Section: .text
Value: 0x1008
Size: 8
- Name: rebar
Type: STT_FUNC
Section: .text
Value: 0x1010
Size: 8
#REGEX1-NOT: foobaz
#REGEX1-NOT: bar
#REGEX1-NOT: rebar
#REGEX2-NOT: foobaz
#REGEX2: bar
#REGEX2-NOT: rebar
#REGEX3: foobaz
#REGEX3: bar
#REGEX3: rebar