From fe9ce427d076627beed834d5c322e61323dfd1fc Mon Sep 17 00:00:00 2001 From: Simon Atanasyan Date: Mon, 11 Nov 2013 20:51:48 +0000 Subject: Add support for DT_VERxxx and DT_MIPS_xxx .dynamic section entries to the llvm-readobj. The patch reviewed by Michael Spencer. http://llvm-reviews.chandlerc.com/D2113 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194421 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/tools/llvm-readobj/Inputs/dynamic-table.c | 7 +++++ test/tools/llvm-readobj/Inputs/dynamic-table.mips | Bin 0 -> 5395 bytes test/tools/llvm-readobj/dynamic.test | 33 ++++++++++++++++++++++ 3 files changed, 40 insertions(+) create mode 100644 test/tools/llvm-readobj/Inputs/dynamic-table.c create mode 100644 test/tools/llvm-readobj/Inputs/dynamic-table.mips create mode 100644 test/tools/llvm-readobj/dynamic.test (limited to 'test/tools/llvm-readobj') diff --git a/test/tools/llvm-readobj/Inputs/dynamic-table.c b/test/tools/llvm-readobj/Inputs/dynamic-table.c new file mode 100644 index 0000000000..6d36e8a711 --- /dev/null +++ b/test/tools/llvm-readobj/Inputs/dynamic-table.c @@ -0,0 +1,7 @@ +// clang -target mipsel-linux-gnu -shared -fPIC -lc dynamic-table.c \ +// -o dynamic-table.mips +int puts(const char *); + +void foo(void) { + puts("Hello, World"); +} diff --git a/test/tools/llvm-readobj/Inputs/dynamic-table.mips b/test/tools/llvm-readobj/Inputs/dynamic-table.mips new file mode 100644 index 0000000000..ab36ceeb5a Binary files /dev/null and b/test/tools/llvm-readobj/Inputs/dynamic-table.mips differ diff --git a/test/tools/llvm-readobj/dynamic.test b/test/tools/llvm-readobj/dynamic.test new file mode 100644 index 0000000000..78a9b3bd93 --- /dev/null +++ b/test/tools/llvm-readobj/dynamic.test @@ -0,0 +1,33 @@ +RUN: llvm-readobj -dynamic-table %p/Inputs/dynamic-table.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 0x2 +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: ] -- cgit v1.2.3