# Note: ls -lu prints the accessed timestamp
# NetBSD: noatime mounts currently inhibit 'touch -a' updates
# Windows: the last access time is disabled by default in the OS
# UNSUPPORTED: system-netbsd, system-windows

# Preserve dates when stripping to an output file.
# RUN: yaml2obj %s -o %t.1.o
# RUN: touch -a -t 199505050555.55 %t.1.o
# RUN: llvm-strip -p %t.1.o -o %t-preserved.1.o
# RUN: ls -lu %t-preserved.1.o | FileCheck %s --check-prefix=CHECK-PRESERVE-ATIME
# Check that the stripped output is in fact a valid object file.
# RUN: llvm-readobj %t-preserved.1.o

# Preserve dates available via objcopy interface as well.
# RUN: yaml2obj %s -o %t.2.o
# RUN: touch -a -t 199505050555.55 %t.2.o
# RUN: llvm-objcopy -p %t.2.o %t-preserved.2.o
# RUN: ls -lu %t-preserved.2.o | FileCheck %s --check-prefix=CHECK-PRESERVE-ATIME
# RUN: llvm-readobj %t-preserved.2.o

# Preserve dates when stripping in place.
# RUN: yaml2obj %s -o %t.3.o
# RUN: touch -a -t 199505050555.55 %t.3.o
# RUN: llvm-strip -p %t.3.o
# RUN: ls -lu %t.3.o | FileCheck %s --check-prefix=CHECK-PRESERVE-ATIME
# RUN: llvm-readobj %t.3.o

# Without -p set, don't preserve dates.
# RUN: yaml2obj %s -o %t.4.o
# RUN: touch -a -t 199505050555.55 %t.4.o
# RUN: llvm-strip %t.4.o
# RUN: ls -lu %t.4.o | FileCheck %s --check-prefix=CHECK-NO-PRESERVE-ATIME
# RUN: llvm-readobj %t.4.o

# Preserve dates in archives.
# RUN: yaml2obj %s -o %t.5.o
# RUN: rm -f %t.a
# RUN: llvm-ar cr %t.a %t.5.o
# RUN: touch -a -t 199505050555.55 %t.a
# RUN: llvm-strip -p %t.a
# RUN: ls -lu %t.a | FileCheck %s --check-prefix=CHECK-PRESERVE-ATIME
# RUN: llvm-readobj %t.a

# Preserve dates in split DWO files.
# RUN: cp %p/Inputs/dwarf.dwo %t-input.dwo
# RUN: touch -a -t 199505050555.55 %t-input.dwo
# RUN: llvm-objcopy -p --split-dwo=%t-dwo %t-input.dwo %t-nondwo
# RUN: ls -lu %t-dwo | FileCheck %s --check-prefix=CHECK-PRESERVE-ATIME
# RUN: llvm-readobj %t-dwo
# RUN: ls -lu %t-nondwo | FileCheck %s --check-prefix=CHECK-PRESERVE-ATIME
# RUN: llvm-readobj %t-nondwo

# CHECK-PRESERVE-ATIME:        {{[[:space:]]1995}}
# CHECK-NO-PRESERVE-ATIME-NOT: {{[[:space:]]1995}}

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