# RUN: llvm-readobj --file-header %p/Inputs/xcoff-basic.o | \
# RUN: FileCheck --check-prefix=FILEHEADER %s
#
# RUN: llvm-readobj --file-header %p/Inputs/xcoff-basic-64.o | \
# RUN: FileCheck --check-prefix=FILEHEADER64 %s

# RUN: llvm-readobj --file-header %p/Inputs/xcoff-basic-neg-time.o | \
# RUN: FileCheck --check-prefix=NEGTIME %s

# RUN: llvm-readobj --file-header %p/Inputs/xcoff-basic-neg-sym-count.o | \
# RUN: FileCheck --check-prefix=NEGSYMCOUNT %s

# FILEHEADER:     File: {{.*}}xcoff-basic.o
# FILEHEADER-NEXT: Format: aixcoff-rs6000
# FILEHEADER-NEXT: Arch: powerpc
# FILEHEADER-NEXT: AddressSize: 32bit
# FILEHEADER-NEXT: FileHeader {
# FILEHEADER-NEXT:   Magic: 0x1DF
# FILEHEADER-NEXT:   NumberOfSections: 6
# FILEHEADER-NEXT:   TimeStamp: 2019-03-12T14:04:43Z (0x5C87BC7B)
# FILEHEADER-NEXT:   SymbolTableOffset: 0x52E
# FILEHEADER-NEXT:   SymbolTableEntries: 120
# FILEHEADER-NEXT:   OptionalHeaderSize: 0x1C
# FILEHEADER-NEXT:   Flags: 0x0
# FILEHEADER-NEXT: }

# FILEHEADER64:     File: {{.*}}xcoff-basic-64.o
# FILEHEADER64-NEXT:  Format: aix5coff64-rs6000
# FILEHEADER64-NEXT:  Arch: powerpc64
# FILEHEADER64-NEXT:  AddressSize: 64bit
# FILEHEADER64-NEXT:  FileHeader {
# FILEHEADER64-NEXT:    Magic: 0x1F7
# FILEHEADER64-NEXT:    NumberOfSections: 5
# FILEHEADER64-NEXT:    TimeStamp: 2019-03-18T20:03:47Z (0x5C8FF9A3)
# FILEHEADER64-NEXT:    SymbolTableOffset: 0x54C
# FILEHEADER64-NEXT:    SymbolTableEntries: 58
# FILEHEADER64-NEXT:    OptionalHeaderSize: 0x0
# FILEHEADER64-NEXT:    Flags: 0x0
# FILEHEADER64-NEXT:  }

# NEGTIME:     File: {{.*}}xcoff-basic-neg-time.o
# NEGTIME-NEXT:  Format: aixcoff-rs6000
# NEGTIME-NEXT:  Arch: powerpc
# NEGTIME-NEXT:  AddressSize: 32bit
# NEGTIME-NEXT:  FileHeader {
# NEGTIME-NEXT:    Magic: 0x1DF
# NEGTIME-NEXT:    NumberOfSections: 6
# NEGTIME-NEXT:    TimeStamp: Reserved Value (0xDC87BC7B)
# NEGTIME-NEXT:    SymbolTableOffset: 0x52E
# NEGTIME-NEXT:    SymbolTableEntries: 120
# NEGTIME-NEXT:    OptionalHeaderSize: 0x1C
# NEGTIME-NEXT:    Flags: 0x0
# NEGTIME-NEXT:  }

# NEGSYMCOUNT:     File: {{.*}}xcoff-basic-neg-sym-count.o
# NEGSYMCOUNT-NEXT:  Format: aixcoff-rs6000
# NEGSYMCOUNT-NEXT:  Arch: powerpc
# NEGSYMCOUNT-NEXT:  AddressSize: 32bit
# NEGSYMCOUNT-NEXT:  FileHeader {
# NEGSYMCOUNT-NEXT:    Magic: 0x1DF
# NEGSYMCOUNT-NEXT:    NumberOfSections: 5
# NEGSYMCOUNT-NEXT:    TimeStamp: 2019-03-12T14:04:43Z (0x5C87BC7B)
# NEGSYMCOUNT-NEXT:    SymbolTableOffset: 0x0
# NEGSYMCOUNT-NEXT:    SymbolTableEntries: Reserved Value (0x80000000)
# NEGSYMCOUNT-NEXT:    OptionalHeaderSize: 0x1C
# NEGSYMCOUNT-NEXT:    Flags: 0xD
# NEGSYMCOUNT-NEXT:  }

# xcoff-basic.o was compiled with `xlc -qtls -O3 -g -c xcoff-basic.c`
# from the following source:
# int a = 55;
# int b;
# __thread int j = 55;
# __thread double d;
# int A() { return a; }
# int B() { return b; }
# int J() { return j; }
# double D() { return d; }
#
# xcoff-basic-neg-time.o was manually edited to include a negative time stamp.
# xcoff-basic-neg-sym-count.o was stripped using the 'strip' utility, and
# manually edited to have a negative symbol table entry count.

