#Source :
#__thread int a = 1;
#__thread int b;
#
#int main () {
#  b = 2;
#  throw (a + b) ;
#  return 0;
#}
# compiled as clang++ source.cpp
# and  clang++ -m32 source.cpp

RUN: llvm-readobj -program-headers %p/Inputs/phdrs-elf.exe-i386 --elf-output-style=GNU \
RUN:   | FileCheck %s -check-prefix ELF32
RUN: llvm-readobj -program-headers %p/Inputs/phdrs-elf.exe-x86_64 --elf-output-style=GNU \
RUN:   | FileCheck %s -check-prefixes ELF64-PHDRS,ELF64-MAPPING
RUN: llvm-readelf -program-headers %p/Inputs/phdrs-elf.exe-x86_64 \
RUN:   | FileCheck %s -check-prefixes ELF64-PHDRS,ELF64-MAPPING

# Check that -section-mapping produces a mapping and not the program headers.
RUN: llvm-readelf -section-mapping %p/Inputs/phdrs-elf.exe-x86_64 \
RUN:   | FileCheck %s -check-prefix ELF64-MAPPING -implicit-check-not="Program Headers:"

# Check that -section-mapping=false -program-headers produces just program headers.
RUN: llvm-readelf -section-mapping=false -program-headers %p/Inputs/phdrs-elf.exe-x86_64 \
RUN:   | FileCheck %s -check-prefix ELF64-PHDRS -implicit-check-not="Section to Segment mapping:"

# Check that only one copy of the section/segment mapping table is produced.
RUN: llvm-readelf -section-mapping -program-headers %p/Inputs/phdrs-elf.exe-x86_64 \
RUN:   | FileCheck %s -check-prefix ELF64-ONEMAPPING

ELF32: Elf file type is EXEC (Executable file)
ELF32-NEXT: Entry point 0x8048460
ELF32-NEXT: There are 10 program headers, starting at offset 52

ELF32: Program Headers:
ELF32-NEXT:   Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
ELF32-NEXT:   PHDR           0x000034 0x08048034 0x08048034 0x00140 0x00140 R E 0x4
ELF32-NEXT:   INTERP         0x000174 0x08048174 0x08048174 0x00013 0x00013 R   0x1
ELF32-NEXT:       [Requesting program interpreter: /lib/ld-linux.so.2]
ELF32-NEXT:   LOAD           0x000000 0x08048000 0x08048000 0x006d0 0x006d0 R E 0x1000
ELF32-NEXT:   LOAD           0x000ef0 0x08049ef0 0x08049ef0 0x00128 0x00140 RW  0x1000
ELF32-NEXT:   DYNAMIC        0x000f08 0x08049f08 0x08049f08 0x000e8 0x000e8 RW  0x4
ELF32-NEXT:   NOTE           0x000188 0x08048188 0x08048188 0x00044 0x00044 R   0x4
ELF32-NEXT:   TLS            0x000ef0 0x08049ef0 0x08049ef0 0x00004 0x00008 R   0x4
ELF32-NEXT:   GNU_EH_FRAME   0x000640 0x08048640 0x08048640 0x0001c 0x0001c R   0x4
ELF32-NEXT:   GNU_STACK      0x000000 0x00000000 0x00000000 0x00000 0x00000 RW  0x4
ELF32-NEXT:   GNU_RELRO      0x000ef0 0x08049ef0 0x08049ef0 0x00110 0x00110 R   0x1

ELF32:  Section to Segment mapping:
ELF32-NEXT:   Segment Sections...
ELF32-NEXT:    00
ELF32-NEXT:    01     .interp
ELF32-NEXT:    02     .interp .note.ABI-tag .note.gnu.build-id .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame
ELF32-NEXT:    03     .tdata .ctors .dtors .jcr .dynamic .got .got.plt .data .bss
ELF32-NEXT:    04     .dynamic
ELF32-NEXT:    05     .note.ABI-tag .note.gnu.build-id
ELF32-NEXT:    06     .tdata .tbss
ELF32-NEXT:    07     .eh_frame_hdr
ELF32-NEXT:    08
ELF32-NEXT:    09     .tdata .ctors .dtors .jcr .dynamic .got
ELF32-NEXT:    None   .comment .shstrtab .symtab .strtab

ELF64-PHDRS: Elf file type is EXEC (Executable file)
ELF64-PHDRS-NEXT: Entry point 0x400610
ELF64-PHDRS-NEXT: There are 10 program headers, starting at offset 64

ELF64-PHDRS: Program Headers:
ELF64-PHDRS-NEXT:   Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align
ELF64-PHDRS-NEXT:   PHDR           0x000040 0x0000000000400040 0x0000000000400040 0x000230 0x000230 R E 0x8
ELF64-PHDRS-NEXT:   INTERP         0x000270 0x0000000000400270 0x0000000000400270 0x00001c 0x00001c R   0x1
ELF64-PHDRS-NEXT:       [Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]
ELF64-PHDRS-NEXT:   LOAD           0x000000 0x0000000000400000 0x0000000000400000 0x000924 0x000924 R E 0x200000
ELF64-PHDRS-NEXT:   LOAD           0x000db4 0x0000000000600db4 0x0000000000600db4 0x000274 0x0002a4 RW  0x200000
ELF64-PHDRS-NEXT:   DYNAMIC        0x000dd0 0x0000000000600dd0 0x0000000000600dd0 0x000210 0x000210 RW  0x8
ELF64-PHDRS-NEXT:   NOTE           0x00028c 0x000000000040028c 0x000000000040028c 0x000044 0x000044 R   0x4
ELF64-PHDRS-NEXT:   TLS            0x000db4 0x0000000000600db4 0x0000000000600db4 0x000004 0x000008 R   0x4
ELF64-PHDRS-NEXT:   GNU_EH_FRAME   0x00083c 0x000000000040083c 0x000000000040083c 0x00002c 0x00002c R   0x4
ELF64-PHDRS-NEXT:   GNU_STACK      0x000000 0x0000000000000000 0x0000000000000000 0x000000 0x000000 RW  0x8
ELF64-PHDRS-NEXT:   GNU_RELRO      0x000db4 0x0000000000600db4 0x0000000000600db4 0x00024c 0x00024c R   0x1

ELF64-MAPPING:  Section to Segment mapping:
ELF64-MAPPING-NEXT:   Segment Sections...
ELF64-MAPPING-NEXT:    00
ELF64-MAPPING-NEXT:    01     .interp
ELF64-MAPPING-NEXT:    02     .interp .note.ABI-tag .note.gnu.build-id .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rela.dyn .rela.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame
ELF64-MAPPING-NEXT:    03     .tdata .init_array .fini_array .jcr .dynamic .got .got.plt .data .bss
ELF64-MAPPING-NEXT:    04     .dynamic
ELF64-MAPPING-NEXT:    05     .note.ABI-tag .note.gnu.build-id
ELF64-MAPPING-NEXT:    06     .tdata .tbss
ELF64-MAPPING-NEXT:    07     .eh_frame_hdr
ELF64-MAPPING-NEXT:    08
ELF64-MAPPING-NEXT:    09     .tdata .init_array .fini_array .jcr .dynamic .got
ELF64-MAPPING-NEXT:    None   .comment .shstrtab .symtab .strtab

ELF64-ONEMAPPING: Section to Segment mapping:
ELF64-ONEMAPPING-NOT: Section to Segment mapping:
