// Check dynamic section tags in case of shared library file.
RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-so.mips \
RUN:     | FileCheck %s -check-prefix ELF-MIPS

ELF-MIPS: Format: ELF32-mips
ELF-MIPS: Arch: mipsel
ELF-MIPS: AddressSize: 32bit
ELF-MIPS: LoadName:
ELF-MIPS: DynamicSection [ (23 entries)
ELF-MIPS:   Tag        Type                 Name/Value
ELF-MIPS:   0x00000001 NEEDED               SharedLibrary (libc.so.6)
ELF-MIPS:   0x0000000C INIT                 0x528
ELF-MIPS:   0x0000000D FINI                 0x860
ELF-MIPS:   0x00000004 HASH                 0x210
ELF-MIPS:   0x00000005 STRTAB               0x3D8
ELF-MIPS:   0x00000006 SYMTAB               0x2A8
ELF-MIPS:   0x0000000A STRSZ                231 (bytes)
ELF-MIPS:   0x0000000B SYMENT               16 (bytes)
ELF-MIPS:   0x00000003 PLTGOT               0x108E0
ELF-MIPS:   0x00000011 REL                  0x518
ELF-MIPS:   0x00000012 RELSZ                16 (bytes)
ELF-MIPS:   0x00000013 RELENT               8 (bytes)
ELF-MIPS:   0x70000001 MIPS_RLD_VERSION     1
ELF-MIPS:   0x70000005 MIPS_FLAGS           NOTPOT
ELF-MIPS:   0x70000006 MIPS_BASE_ADDRESS    0x0
ELF-MIPS:   0x7000000A MIPS_LOCAL_GOTNO     10
ELF-MIPS:   0x70000011 MIPS_SYMTABNO        19
ELF-MIPS:   0x70000012 MIPS_UNREFEXTNO      26
ELF-MIPS:   0x70000013 MIPS_GOTSYM          0xD
ELF-MIPS:   0x6FFFFFFE VERNEED              0x4E8
ELF-MIPS:   0x6FFFFFFF VERNEEDNUM           1
ELF-MIPS:   0x6FFFFFF0 VERSYM               0x4C0
ELF-MIPS:   0x00000000 NULL                 0x0
ELF-MIPS: ]

// Check dynamic section tags in case of non-pic executable file.
RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-exe.mips \
RUN:     | FileCheck %s -check-prefix ELF-MIPS-EXE

ELF-MIPS-EXE: Format: ELF32-mips
ELF-MIPS-EXE: Arch: mipsel
ELF-MIPS-EXE: AddressSize: 32bit
ELF-MIPS-EXE: LoadName:
ELF-MIPS-EXE: DynamicSection [ (26 entries)
ELF-MIPS-EXE:   Tag        Type                 Name/Value
ELF-MIPS-EXE:   0x00000001 NEEDED               SharedLibrary (libc.so.6)
ELF-MIPS-EXE:   0x0000000C INIT                 0x400418
ELF-MIPS-EXE:   0x0000000D FINI                 0x4007B0
ELF-MIPS-EXE:   0x00000004 HASH                 0x4002B8
ELF-MIPS-EXE:   0x00000005 STRTAB               0x40036C
ELF-MIPS-EXE:   0x00000006 SYMTAB               0x4002EC
ELF-MIPS-EXE:   0x0000000A STRSZ                107 (bytes)
ELF-MIPS-EXE:   0x0000000B SYMENT               16 (bytes)
ELF-MIPS-EXE:   0x70000016 MIPS_RLD_MAP         0x410880
ELF-MIPS-EXE:   0x00000015 DEBUG                0x0
ELF-MIPS-EXE:   0x00000003 PLTGOT               0x410890
ELF-MIPS-EXE:   0x70000001 MIPS_RLD_VERSION     1
ELF-MIPS-EXE:   0x70000005 MIPS_FLAGS           NOTPOT
ELF-MIPS-EXE:   0x70000006 MIPS_BASE_ADDRESS    0x400000
ELF-MIPS-EXE:   0x7000000A MIPS_LOCAL_GOTNO     5
ELF-MIPS-EXE:   0x70000011 MIPS_SYMTABNO        8
ELF-MIPS-EXE:   0x70000012 MIPS_UNREFEXTNO      32
ELF-MIPS-EXE:   0x70000013 MIPS_GOTSYM          0x7
ELF-MIPS-EXE:   0x00000014 PLTREL               REL
ELF-MIPS-EXE:   0x00000017 JMPREL               0x400408
ELF-MIPS-EXE:   0x00000002 PLTRELSZ             16 (bytes)
ELF-MIPS-EXE:   0x70000032 MIPS_PLTGOT          0x410854
ELF-MIPS-EXE:   0x6FFFFFFE VERNEED              0x4003E8
ELF-MIPS-EXE:   0x6FFFFFFF VERNEEDNUM           1
ELF-MIPS-EXE:   0x6FFFFFF0 VERSYM               0x4003D8
ELF-MIPS-EXE:   0x00000000 NULL                 0x0
ELF-MIPS-EXE: ]

RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table-exe.x86 \
RUN:     | FileCheck %s -check-prefix ELF-X86-EXE

ELF-X86-EXE: Format: ELF32-i386
ELF-X86-EXE: Arch: i386
ELF-X86-EXE: AddressSize: 32bit
ELF-X86-EXE: LoadName:
ELF-X86-EXE: DynamicSection [ (30 entries)
ELF-X86-EXE:   Tag        Type                 Name/Value
ELF-X86-EXE:   0x00000001 NEEDED               SharedLibrary (libstdc++.so.6)
ELF-X86-EXE:   0x00000001 NEEDED               SharedLibrary (libgcc_s.so.1)
ELF-X86-EXE:   0x00000001 NEEDED               SharedLibrary (libc.so.6)
ELF-X86-EXE:   0x0000000C INIT                 0x62C
ELF-X86-EXE:   0x0000000D FINI                 0x920
ELF-X86-EXE:   0x00000019 INIT_ARRAY           0x19FC
ELF-X86-EXE:   0x0000001B INIT_ARRAYSZ         4 (bytes)
ELF-X86-EXE:   0x0000001A FINI_ARRAY           0x1A00
ELF-X86-EXE:   0x0000001C FINI_ARRAYSZ         4 (bytes)
ELF-X86-EXE:   0x00000004 HASH                 0x18C
ELF-X86-EXE:   0x6FFFFEF5 GNU_HASH             0x1E4
ELF-X86-EXE:   0x00000005 STRTAB               0x328
ELF-X86-EXE:   0x00000006 SYMTAB               0x218
ELF-X86-EXE:   0x0000000A STRSZ                408 (bytes)
ELF-X86-EXE:   0x0000000B SYMENT               16 (bytes)
ELF-X86-EXE:   0x00000015 DEBUG                0x0
ELF-X86-EXE:   0x00000003 PLTGOT               0x1B30
ELF-X86-EXE:   0x00000002 PLTRELSZ             64 (bytes)
ELF-X86-EXE:   0x00000014 PLTREL               REL
ELF-X86-EXE:   0x00000017 JMPREL               0x5EC
ELF-X86-EXE:   0x00000011 REL                  0x564
ELF-X86-EXE:   0x00000012 RELSZ                136 (bytes)
ELF-X86-EXE:   0x00000013 RELENT               8 (bytes)
ELF-X86-EXE:   0x00000016 TEXTREL
ELF-X86-EXE:   0x0000001E FLAGS                TEXTREL
ELF-X86-EXE:   0x6FFFFFFE VERNEED              0x4E4
ELF-X86-EXE:   0x6FFFFFFF VERNEEDNUM           3
ELF-X86-EXE:   0x6FFFFFF0 VERSYM               0x4C0
ELF-X86-EXE:   0x6FFFFFFA RELCOUNT             6
ELF-X86-EXE:   0x00000000 NULL                 0x0
ELF-X86-EXE: ]
