reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
## --no-strip-all disables the --strip-all llvm-strip switch.
## It also disables the default --strip-all behaviour.

# RUN: yaml2obj %s -o %t.o

## Base case: no switches, should strip. Used as a sanity check for later test cases.
# RUN: llvm-strip %t.o -o %t1.o
# RUN: llvm-readobj --file-headers --sections %t1.o | FileCheck %s --check-prefix=ALL

## --no-strip-all alone disables stripping.
# RUN: llvm-strip --no-strip-all %t.o -o %t2.o
# RUN: llvm-readobj --file-headers --sections %t2.o | FileCheck %s --check-prefix=NO-STRIP

## --no-strip-all wins if last.
# RUN: llvm-strip --strip-all --no-strip-all %t.o -o %t3.o
# RUN: cmp %t2.o %t3.o

## --strip-all wins if last.
# RUN: llvm-strip --no-strip-all --strip-all %t.o -o %t4.o
# RUN: cmp %t1.o %t4.o

## The last instance of --no-strip-all is used in the comparison.
# RUN: llvm-strip --no-strip-all --strip-all --no-strip-all %t.o -o %t5.o
# RUN: cmp %t2.o %t5.o

## The last instance of --strip-all is used in the comparison.
# RUN: llvm-strip --strip-all --no-strip-all --strip-all %t.o -o %t6.o
# RUN: cmp %t1.o %t6.o

--- !ELF
FileHeader:
  Class:   ELFCLASS64
  Data:    ELFDATA2LSB
  Type:    ET_REL
  Machine: EM_X86_64
Sections:
  - Name:  .alloc
    Type:  SHT_PROGBITS
    Flags: [ SHF_ALLOC ]
Symbols: []

# ALL: SectionHeaderCount: 3
# ALL: Name: .alloc
# ALL: Name: .shstrtab

# NO-STRIP: SectionHeaderCount: 5
# NO-STRIP: Name: .alloc
# NO-STRIP: Name: .symtab
# NO-STRIP: Name: .strtab
# NO-STRIP: Name: .shstrtab