summaryrefslogtreecommitdiff
path: root/test/elfdump/ts/exec1
diff options
context:
space:
mode:
Diffstat (limited to 'test/elfdump/ts/exec1')
-rw-r--r--test/elfdump/ts/exec1/@G%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@G%ls.out221
-rw-r--r--test/elfdump/ts/exec1/@G@e%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@G@e%ls.out238
-rw-r--r--test/elfdump/ts/exec1/@S@G%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@G%ls.out76
-rw-r--r--test/elfdump/ts/exec1/@S@c@s%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@c@s%ls.out267
-rw-r--r--test/elfdump/ts/exec1/@S@d%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@d%ls.out29
-rw-r--r--test/elfdump/ts/exec1/@S@e%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@e%ls.out10
-rw-r--r--test/elfdump/ts/exec1/@S@e@k%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@e@k%ls.out12
-rw-r--r--test/elfdump/ts/exec1/@S@e@p%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@e@p%ls.out52
-rw-r--r--test/elfdump/ts/exec1/@S@h%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@h%ls.out99
-rw-r--r--test/elfdump/ts/exec1/@S@n%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@n%ls.out8
-rw-r--r--test/elfdump/ts/exec1/@S@r%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@r%ls.out84
-rw-r--r--test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.out11
-rw-r--r--test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.out84
-rw-r--r--test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.out92
-rw-r--r--test/elfdump/ts/exec1/@S@v%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@S@v%ls.out5
-rw-r--r--test/elfdump/ts/exec1/@c%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@c%ls.out314
-rw-r--r--test/elfdump/ts/exec1/@c@d%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@c@d%ls.out418
-rw-r--r--test/elfdump/ts/exec1/@c@p@n%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@c@p@n%ls.out389
-rw-r--r--test/elfdump/ts/exec1/@c@s%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@c@s%ls.out939
-rw-r--r--test/elfdump/ts/exec1/@e%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@e%ls.out17
-rw-r--r--test/elfdump/ts/exec1/@e@d%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@e@d%ls.out121
-rw-r--r--test/elfdump/ts/exec1/@e@p%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@e@p%ls.out89
-rw-r--r--test/elfdump/ts/exec1/@e@p@c@d%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@e@p@c@d%ls.out507
-rw-r--r--test/elfdump/ts/exec1/@n%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@n%ls.out3
-rw-r--r--test/elfdump/ts/exec1/@p@e%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@p@e%ls.out89
-rw-r--r--test/elfdump/ts/exec1/@p@n%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@p@n%ls.out75
-rw-r--r--test/elfdump/ts/exec1/@p@s%ls.err0
-rw-r--r--test/elfdump/ts/exec1/@p@s%ls.out697
-rw-r--r--test/elfdump/ts/exec1/lsbin0 -> 30000 bytes
-rwxr-xr-xtest/elfdump/ts/exec1/tc174
56 files changed, 5120 insertions, 0 deletions
diff --git a/test/elfdump/ts/exec1/@G%ls.err b/test/elfdump/ts/exec1/@G%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@G%ls.err
diff --git a/test/elfdump/ts/exec1/@G%ls.out b/test/elfdump/ts/exec1/@G%ls.out
new file mode 100644
index 0000000000000..8470efe18be65
--- /dev/null
+++ b/test/elfdump/ts/exec1/@G%ls.out
@@ -0,0 +1,221 @@
+
+global offset table:
+
+entry: 0
+ 0x506708
+
+entry: 1
+ 0
+
+entry: 2
+ 0
+
+entry: 3
+ 0x401862
+
+entry: 4
+ 0x401872
+
+entry: 5
+ 0x401882
+
+entry: 6
+ 0x401892
+
+entry: 7
+ 0x4018a2
+
+entry: 8
+ 0x4018b2
+
+entry: 9
+ 0x4018c2
+
+entry: 10
+ 0x4018d2
+
+entry: 11
+ 0x4018e2
+
+entry: 12
+ 0x4018f2
+
+entry: 13
+ 0x401902
+
+entry: 14
+ 0x401912
+
+entry: 15
+ 0x401922
+
+entry: 16
+ 0x401932
+
+entry: 17
+ 0x401942
+
+entry: 18
+ 0x401952
+
+entry: 19
+ 0x401962
+
+entry: 20
+ 0x401972
+
+entry: 21
+ 0x401982
+
+entry: 22
+ 0x401992
+
+entry: 23
+ 0x4019a2
+
+entry: 24
+ 0x4019b2
+
+entry: 25
+ 0x4019c2
+
+entry: 26
+ 0x4019d2
+
+entry: 27
+ 0x4019e2
+
+entry: 28
+ 0x4019f2
+
+entry: 29
+ 0x401a02
+
+entry: 30
+ 0x401a12
+
+entry: 31
+ 0x401a22
+
+entry: 32
+ 0x401a32
+
+entry: 33
+ 0x401a42
+
+entry: 34
+ 0x401a52
+
+entry: 35
+ 0x401a62
+
+entry: 36
+ 0x401a72
+
+entry: 37
+ 0x401a82
+
+entry: 38
+ 0x401a92
+
+entry: 39
+ 0x401aa2
+
+entry: 40
+ 0x401ab2
+
+entry: 41
+ 0x401ac2
+
+entry: 42
+ 0x401ad2
+
+entry: 43
+ 0x401ae2
+
+entry: 44
+ 0x401af2
+
+entry: 45
+ 0x401b02
+
+entry: 46
+ 0x401b12
+
+entry: 47
+ 0x401b22
+
+entry: 48
+ 0x401b32
+
+entry: 49
+ 0x401b42
+
+entry: 50
+ 0x401b52
+
+entry: 51
+ 0x401b62
+
+entry: 52
+ 0x401b72
+
+entry: 53
+ 0x401b82
+
+entry: 54
+ 0x401b92
+
+entry: 55
+ 0x401ba2
+
+entry: 56
+ 0x401bb2
+
+entry: 57
+ 0x401bc2
+
+entry: 58
+ 0x401bd2
+
+entry: 59
+ 0x401be2
+
+entry: 60
+ 0x401bf2
+
+entry: 61
+ 0x401c02
+
+entry: 62
+ 0x401c12
+
+entry: 63
+ 0x401c22
+
+entry: 64
+ 0x401c32
+
+entry: 65
+ 0x401c42
+
+entry: 66
+ 0x401c52
+
+entry: 67
+ 0x401c62
+
+entry: 68
+ 0x401c72
+
+entry: 69
+ 0x401c82
+
+entry: 70
+ 0x401c92
+
+entry: 71
+ 0x401ca2
+
+entry: 72
+ 0x401cb2
diff --git a/test/elfdump/ts/exec1/@G@e%ls.err b/test/elfdump/ts/exec1/@G@e%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@G@e%ls.err
diff --git a/test/elfdump/ts/exec1/@G@e%ls.out b/test/elfdump/ts/exec1/@G@e%ls.out
new file mode 100644
index 0000000000000..a58bacfeb7613
--- /dev/null
+++ b/test/elfdump/ts/exec1/@G@e%ls.out
@@ -0,0 +1,238 @@
+
+elf header:
+
+ e_ident: ELFCLASS64 ELFDATA2LSB ELFOSABI_FREEBSD
+ e_type: ET_EXEC
+ e_machine: EM_X86_64
+ e_version: EV_CURRENT
+ e_entry: 0x401cc0
+ e_phoff: 64
+ e_shoff: 28336
+ e_flags: 0
+ e_ehsize: 64
+ e_phentsize: 56
+ e_phnum: 7
+ e_shentsize: 64
+ e_shnum: 26
+ e_shstrndx: 25
+
+global offset table:
+
+entry: 0
+ 0x506708
+
+entry: 1
+ 0
+
+entry: 2
+ 0
+
+entry: 3
+ 0x401862
+
+entry: 4
+ 0x401872
+
+entry: 5
+ 0x401882
+
+entry: 6
+ 0x401892
+
+entry: 7
+ 0x4018a2
+
+entry: 8
+ 0x4018b2
+
+entry: 9
+ 0x4018c2
+
+entry: 10
+ 0x4018d2
+
+entry: 11
+ 0x4018e2
+
+entry: 12
+ 0x4018f2
+
+entry: 13
+ 0x401902
+
+entry: 14
+ 0x401912
+
+entry: 15
+ 0x401922
+
+entry: 16
+ 0x401932
+
+entry: 17
+ 0x401942
+
+entry: 18
+ 0x401952
+
+entry: 19
+ 0x401962
+
+entry: 20
+ 0x401972
+
+entry: 21
+ 0x401982
+
+entry: 22
+ 0x401992
+
+entry: 23
+ 0x4019a2
+
+entry: 24
+ 0x4019b2
+
+entry: 25
+ 0x4019c2
+
+entry: 26
+ 0x4019d2
+
+entry: 27
+ 0x4019e2
+
+entry: 28
+ 0x4019f2
+
+entry: 29
+ 0x401a02
+
+entry: 30
+ 0x401a12
+
+entry: 31
+ 0x401a22
+
+entry: 32
+ 0x401a32
+
+entry: 33
+ 0x401a42
+
+entry: 34
+ 0x401a52
+
+entry: 35
+ 0x401a62
+
+entry: 36
+ 0x401a72
+
+entry: 37
+ 0x401a82
+
+entry: 38
+ 0x401a92
+
+entry: 39
+ 0x401aa2
+
+entry: 40
+ 0x401ab2
+
+entry: 41
+ 0x401ac2
+
+entry: 42
+ 0x401ad2
+
+entry: 43
+ 0x401ae2
+
+entry: 44
+ 0x401af2
+
+entry: 45
+ 0x401b02
+
+entry: 46
+ 0x401b12
+
+entry: 47
+ 0x401b22
+
+entry: 48
+ 0x401b32
+
+entry: 49
+ 0x401b42
+
+entry: 50
+ 0x401b52
+
+entry: 51
+ 0x401b62
+
+entry: 52
+ 0x401b72
+
+entry: 53
+ 0x401b82
+
+entry: 54
+ 0x401b92
+
+entry: 55
+ 0x401ba2
+
+entry: 56
+ 0x401bb2
+
+entry: 57
+ 0x401bc2
+
+entry: 58
+ 0x401bd2
+
+entry: 59
+ 0x401be2
+
+entry: 60
+ 0x401bf2
+
+entry: 61
+ 0x401c02
+
+entry: 62
+ 0x401c12
+
+entry: 63
+ 0x401c22
+
+entry: 64
+ 0x401c32
+
+entry: 65
+ 0x401c42
+
+entry: 66
+ 0x401c52
+
+entry: 67
+ 0x401c62
+
+entry: 68
+ 0x401c72
+
+entry: 69
+ 0x401c82
+
+entry: 70
+ 0x401c92
+
+entry: 71
+ 0x401ca2
+
+entry: 72
+ 0x401cb2
diff --git a/test/elfdump/ts/exec1/@S@G%ls.err b/test/elfdump/ts/exec1/@S@G%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@G%ls.err
diff --git a/test/elfdump/ts/exec1/@S@G%ls.out b/test/elfdump/ts/exec1/@S@G%ls.out
new file mode 100644
index 0000000000000..07560abcdcb4b
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@G%ls.out
@@ -0,0 +1,76 @@
+
+Global Offset Table Section: .got (73 entries)
+ ndx addr value reloc addend symbol
+[00000] 00000000005068e0 0000000000506708 R_X86_64_NONE 000000000000
+[00001] 00000000005068e8 0000000000000000 R_X86_64_NONE 000000000000
+[00002] 00000000005068f0 0000000000000000 R_X86_64_NONE 000000000000
+[00003] 00000000005068f8 0000000000401862 R_X86_64_JMP_SLOT 000000000000 fflagstostr
+[00004] 0000000000506900 0000000000401872 R_X86_64_JMP_SLOT 000000000000 puts
+[00005] 0000000000506908 0000000000401882 R_X86_64_JMP_SLOT 000000000000 fprintf
+[00006] 0000000000506910 0000000000401892 R_X86_64_JMP_SLOT 000000000000 atoi
+[00007] 0000000000506918 00000000004018a2 R_X86_64_JMP_SLOT 000000000000 time
+[00008] 0000000000506920 00000000004018b2 R_X86_64_JMP_SLOT 000000000000 mbrtowc
+[00009] 0000000000506928 00000000004018c2 R_X86_64_JMP_SLOT 000000000000 write
+[00010] 0000000000506930 00000000004018d2 R_X86_64_JMP_SLOT 000000000000 fputc
+[00011] 0000000000506938 00000000004018e2 R_X86_64_JMP_SLOT 000000000000 getenv
+[00012] 0000000000506940 00000000004018f2 R_X86_64_JMP_SLOT 000000000000 kill
+[00013] 0000000000506948 0000000000401902 R_X86_64_JMP_SLOT 000000000000 humanize_number
+[00014] 0000000000506950 0000000000401912 R_X86_64_JMP_SLOT 000000000000 tgoto
+[00015] 0000000000506958 0000000000401922 R_X86_64_JMP_SLOT 000000000000 putc
+[00016] 0000000000506960 0000000000401932 R_X86_64_JMP_SLOT 000000000000 strdup
+[00017] 0000000000506968 0000000000401942 R_X86_64_JMP_SLOT 000000000000 mac_get_link
+[00018] 0000000000506970 0000000000401952 R_X86_64_JMP_SLOT 000000000000 fputs
+[00019] 0000000000506978 0000000000401962 R_X86_64_JMP_SLOT 000000000000 ___runetype
+[00020] 0000000000506980 0000000000401972 R_X86_64_JMP_SLOT 000000000000 mac_prepare_file_label
+[00021] 0000000000506988 0000000000401982 R_X86_64_JMP_SLOT 000000000000 mac_to_text
+[00022] 0000000000506990 0000000000401992 R_X86_64_JMP_SLOT 000000000000 ioctl
+[00023] 0000000000506998 00000000004019a2 R_X86_64_JMP_SLOT 000000000000 group_from_gid
+[00024] 00000000005069a0 00000000004019b2 R_X86_64_JMP_SLOT 000000000000 strftime
+[00025] 00000000005069a8 00000000004019c2 R_X86_64_JMP_SLOT 000000000000 strerror
+[00026] 00000000005069b0 00000000004019d2 R_X86_64_JMP_SLOT 000000000000 _init_tls
+[00027] 00000000005069b8 00000000004019e2 R_X86_64_JMP_SLOT 000000000000 realloc
+[00028] 00000000005069c0 00000000004019f2 R_X86_64_JMP_SLOT 000000000000 localtime
+[00029] 00000000005069c8 0000000000401a02 R_X86_64_JMP_SLOT 000000000000 mac_free
+[00030] 00000000005069d0 0000000000401a12 R_X86_64_JMP_SLOT 000000000000 acl_get_entry
+[00031] 00000000005069d8 0000000000401a22 R_X86_64_JMP_SLOT 000000000000 fts_set
+[00032] 00000000005069e0 0000000000401a32 R_X86_64_JMP_SLOT 000000000000 strchr
+[00033] 00000000005069e8 0000000000401a42 R_X86_64_JMP_SLOT 000000000000 strcoll
+[00034] 00000000005069f0 0000000000401a52 R_X86_64_JMP_SLOT 000000000000 getopt
+[00035] 00000000005069f8 0000000000401a62 R_X86_64_JMP_SLOT 000000000000 strmode
+[00036] 0000000000506a00 0000000000401a72 R_X86_64_JMP_SLOT 000000000000 warnx
+[00037] 0000000000506a08 0000000000401a82 R_X86_64_JMP_SLOT 000000000000 tputs
+[00038] 0000000000506a10 0000000000401a92 R_X86_64_JMP_SLOT 000000000000 sscanf
+[00039] 0000000000506a18 0000000000401aa2 R_X86_64_JMP_SLOT 000000000000 memset
+[00040] 0000000000506a20 0000000000401ab2 R_X86_64_JMP_SLOT 000000000000 __error
+[00041] 0000000000506a28 0000000000401ac2 R_X86_64_JMP_SLOT 000000000000 pathconf
+[00042] 0000000000506a30 0000000000401ad2 R_X86_64_JMP_SLOT 000000000000 fts_children
+[00043] 0000000000506a38 0000000000401ae2 R_X86_64_JMP_SLOT 000000000000 printf
+[00044] 0000000000506a40 0000000000401af2 R_X86_64_JMP_SLOT 000000000000 user_from_uid
+[00045] 0000000000506a48 0000000000401b02 R_X86_64_JMP_SLOT 000000000000 snprintf
+[00046] 0000000000506a50 0000000000401b12 R_X86_64_JMP_SLOT 000000000000 warn
+[00047] 0000000000506a58 0000000000401b22 R_X86_64_JMP_SLOT 000000000000 tgetent
+[00048] 0000000000506a60 0000000000401b32 R_X86_64_JMP_SLOT 000000000000 signal
+[00049] 0000000000506a68 0000000000401b42 R_X86_64_JMP_SLOT 000000000000 fts_read
+[00050] 0000000000506a70 0000000000401b52 R_X86_64_JMP_SLOT 000000000000 nl_langinfo
+[00051] 0000000000506a78 0000000000401b62 R_X86_64_JMP_SLOT 000000000000 setenv
+[00052] 0000000000506a80 0000000000401b72 R_X86_64_JMP_SLOT 000000000000 fwrite
+[00053] 0000000000506a88 0000000000401b82 R_X86_64_JMP_SLOT 000000000000 fts_open
+[00054] 0000000000506a90 0000000000401b92 R_X86_64_JMP_SLOT 000000000000 getbsize
+[00055] 0000000000506a98 0000000000401ba2 R_X86_64_JMP_SLOT 000000000000 __swbuf
+[00056] 0000000000506aa0 0000000000401bb2 R_X86_64_JMP_SLOT 000000000000 exit
+[00057] 0000000000506aa8 0000000000401bc2 R_X86_64_JMP_SLOT 000000000000 malloc
+[00058] 0000000000506ab0 0000000000401bd2 R_X86_64_JMP_SLOT 000000000000 mac_get_file
+[00059] 0000000000506ab8 0000000000401be2 R_X86_64_JMP_SLOT 000000000000 err
+[00060] 0000000000506ac0 0000000000401bf2 R_X86_64_JMP_SLOT 000000000000 isatty
+[00061] 0000000000506ac8 0000000000401c02 R_X86_64_JMP_SLOT 000000000000 setlocale
+[00062] 0000000000506ad0 0000000000401c12 R_X86_64_JMP_SLOT 000000000000 free
+[00063] 0000000000506ad8 0000000000401c22 R_X86_64_JMP_SLOT 000000000000 getuid
+[00064] 0000000000506ae0 0000000000401c32 R_X86_64_JMP_SLOT 000000000000 __stack_chk_fail
+[00065] 0000000000506ae8 0000000000401c42 R_X86_64_JMP_SLOT 000000000000 atexit
+[00066] 0000000000506af0 0000000000401c52 R_X86_64_JMP_SLOT 000000000000 acl_free
+[00067] 0000000000506af8 0000000000401c62 R_X86_64_JMP_SLOT 000000000000 getpid
+[00068] 0000000000506b00 0000000000401c72 R_X86_64_JMP_SLOT 000000000000 strlen
+[00069] 0000000000506b08 0000000000401c82 R_X86_64_JMP_SLOT 000000000000 strcpy
+[00070] 0000000000506b10 0000000000401c92 R_X86_64_JMP_SLOT 000000000000 readlink
+[00071] 0000000000506b18 0000000000401ca2 R_X86_64_JMP_SLOT 000000000000 tgetstr
+[00072] 0000000000506b20 0000000000401cb2 R_X86_64_JMP_SLOT 000000000000 acl_get_file
diff --git a/test/elfdump/ts/exec1/@S@c@s%ls.err b/test/elfdump/ts/exec1/@S@c@s%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@c@s%ls.err
diff --git a/test/elfdump/ts/exec1/@S@c@s%ls.out b/test/elfdump/ts/exec1/@S@c@s%ls.out
new file mode 100644
index 0000000000000..e62c8717ad431
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@c@s%ls.out
@@ -0,0 +1,267 @@
+
+Section Header[1]: sh_name: .interp
+ sh_addr: 0x4001c8 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x15 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x1c8 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x1
+
+Section Header[2]: sh_name: .note.ABI-tag
+ sh_addr: 0x4001e0 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x18 sh_type: [ SHT_NOTE ]
+ sh_offset: 0x1e0 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x4
+
+Section Header[3]: sh_name: .hash
+ sh_addr: 0x4001f8 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x278 sh_type: [ SHT_HASH ]
+ sh_offset: 0x1f8 sh_entsize: 0x4
+ sh_link: 4 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[4]: sh_name: .dynsym
+ sh_addr: 0x400470 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x858 sh_type: [ SHT_DYNSYM ]
+ sh_offset: 0x470 sh_entsize: 0x18
+ sh_link: 5 sh_info: 1
+ sh_addralign: 0x8
+
+Section Header[5]: sh_name: .dynstr
+ sh_addr: 0x400cc8 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x33c sh_type: [ SHT_STRTAB ]
+ sh_offset: 0xcc8 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x1
+
+Section Header[6]: sh_name: .gnu.version
+ sh_addr: 0x401004 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0xb2 sh_type: [ SHT_SUNW(GNU)_versym ]
+ sh_offset: 0x1004 sh_entsize: 0x2
+ sh_link: 4 sh_info: 0
+ sh_addralign: 0x2
+
+Section Header[7]: sh_name: .gnu.version_r
+ sh_addr: 0x4010b8 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x30 sh_type: [ SHT_SUNW(GNU)_verneed ]
+ sh_offset: 0x10b8 sh_entsize: 0
+ sh_link: 5 sh_info: 1
+ sh_addralign: 0x8
+
+Section Header[8]: sh_name: .rela.dyn
+ sh_addr: 0x4010e8 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0xc0 sh_type: [ SHT_RELA ]
+ sh_offset: 0x10e8 sh_entsize: 0x18
+ sh_link: 4 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[9]: sh_name: .rela.plt
+ sh_addr: 0x4011a8 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x690 sh_type: [ SHT_RELA ]
+ sh_offset: 0x11a8 sh_entsize: 0x18
+ sh_link: 4 sh_info: 11
+ sh_addralign: 0x8
+
+Section Header[10]: sh_name: .init
+ sh_addr: 0x401838 sh_flags: [ SHF_ALLOC|SHF_EXECINSTR ]
+ sh_size: 0x13 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x1838 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x4
+
+Section Header[11]: sh_name: .plt
+ sh_addr: 0x40184c sh_flags: [ SHF_ALLOC|SHF_EXECINSTR ]
+ sh_size: 0x470 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x184c sh_entsize: 0x10
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x4
+
+Section Header[12]: sh_name: .text
+ sh_addr: 0x401cc0 sh_flags: [ SHF_ALLOC|SHF_EXECINSTR ]
+ sh_size: 0x3e88 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x1cc0 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x10
+
+Section Header[13]: sh_name: .fini
+ sh_addr: 0x405b48 sh_flags: [ SHF_ALLOC|SHF_EXECINSTR ]
+ sh_size: 0xe sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x5b48 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x4
+
+Section Header[14]: sh_name: .rodata
+ sh_addr: 0x405b60 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x5dc sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x5b60 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x10
+
+Section Header[15]: sh_name: .eh_frame_hdr
+ sh_addr: 0x40613c sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x8 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x613c sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x4
+
+Section Header[16]: sh_name: .data
+ sh_addr: 0x506150 sh_flags: [ SHF_WRITE|SHF_ALLOC ]
+ sh_size: 0x4c sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x6150 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x10
+
+Section Header[17]: sh_name: .eh_frame
+ sh_addr: 0x5061a0 sh_flags: [ SHF_ALLOC ]
+ sh_size: 0x568 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x61a0 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[18]: sh_name: .dynamic
+ sh_addr: 0x506708 sh_flags: [ SHF_WRITE|SHF_ALLOC ]
+ sh_size: 0x1b0 sh_type: [ SHT_DYNAMIC ]
+ sh_offset: 0x6708 sh_entsize: 0x10
+ sh_link: 5 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[19]: sh_name: .ctors
+ sh_addr: 0x5068b8 sh_flags: [ SHF_WRITE|SHF_ALLOC ]
+ sh_size: 0x10 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x68b8 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[20]: sh_name: .dtors
+ sh_addr: 0x5068c8 sh_flags: [ SHF_WRITE|SHF_ALLOC ]
+ sh_size: 0x10 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x68c8 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[21]: sh_name: .jcr
+ sh_addr: 0x5068d8 sh_flags: [ SHF_WRITE|SHF_ALLOC ]
+ sh_size: 0x8 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x68d8 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[22]: sh_name: .got
+ sh_addr: 0x5068e0 sh_flags: [ SHF_WRITE|SHF_ALLOC ]
+ sh_size: 0x248 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x68e0 sh_entsize: 0x8
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x8
+
+Section Header[23]: sh_name: .bss
+ sh_addr: 0x506b40 sh_flags: [ SHF_WRITE|SHF_ALLOC ]
+ sh_size: 0x218 sh_type: [ SHT_NOBITS ]
+ sh_offset: 0x6b40 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x20
+
+Section Header[24]: sh_name: .comment
+ sh_addr: 0 sh_flags: 0
+ sh_size: 0x2a0 sh_type: [ SHT_PROGBITS ]
+ sh_offset: 0x6b40 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x1
+
+Section Header[25]: sh_name: .shstrtab
+ sh_addr: 0 sh_flags: 0
+ sh_size: 0xce sh_type: [ SHT_STRTAB ]
+ sh_offset: 0x6de0 sh_entsize: 0
+ sh_link: 0 sh_info: 0
+ sh_addralign: 0x1
+
+Symbol Table Section: .dynsym
+ index value size type bind oth ver shndx name
+ [0] 0x00000000 0x000000000000 NOTY LOCL D 0 UNDEF
+ [1] 0x0040185c 0x00000000008a FUNC GLOB D 2 UNDEF fflagstostr
+ [2] 0x0040186c 0x0000000000d2 FUNC GLOB D 2 UNDEF puts
+ [3] 0x0040187c 0x000000000090 FUNC GLOB D 2 UNDEF fprintf
+ [4] 0x0040188c 0x000000000015 FUNC GLOB D 2 UNDEF atoi
+ [5] 0x0040189c 0x000000000032 FUNC GLOB D 2 UNDEF time
+ [6] 0x004018ac 0x00000000001b FUNC GLOB D 2 UNDEF mbrtowc
+ [7] 0x004018bc 0x000000000000 FUNC GLOB D 2 UNDEF write
+ [8] 0x004018cc 0x00000000009e FUNC GLOB D 2 UNDEF fputc
+ [9] 0x004018dc 0x000000000185 FUNC GLOB D 2 UNDEF getenv
+ [10] 0x00506708 0x000000000000 OBJT GLOB D 1 ABS _DYNAMIC
+ [11] 0x004018ec 0x000000000000 FUNC GLOB D 2 UNDEF kill
+ [12] 0x004018fc 0x0000000003bf FUNC GLOB D 0 UNDEF humanize_number
+ [13] 0x0040190c 0x0000000003e1 FUNC GLOB D 0 UNDEF tgoto
+ [14] 0x0040191c 0x00000000009e FUNC GLOB D 2 UNDEF putc
+ [15] 0x0040192c 0x000000000055 FUNC GLOB D 2 UNDEF strdup
+ [16] 0x0040193c 0x000000000005 FUNC GLOB D 2 UNDEF mac_get_link
+ [17] 0x0040194c 0x00000000009a FUNC GLOB D 2 UNDEF fputs
+ [18] 0x0040195c 0x000000000075 FUNC GLOB D 2 UNDEF ___runetype
+ [19] 0x0040196c 0x00000000000c FUNC GLOB D 2 UNDEF mac_prepare_file_label
+ [20] 0x0040197c 0x00000000001b FUNC GLOB D 2 UNDEF mac_to_text
+ [21] 0x00506b40 0x000000000040 OBJT GLOB D 2 .bss __stack_chk_guard
+ [22] 0x0040198c 0x000000000000 FUNC GLOB D 2 UNDEF ioctl
+ [23] 0x0040199c 0x00000000010f FUNC GLOB D 2 UNDEF group_from_gid
+ [24] 0x004019ac 0x000000000187 FUNC GLOB D 2 UNDEF strftime
+ [25] 0x004019bc 0x000000000030 FUNC GLOB D 2 UNDEF strerror
+ [26] 0x004019cc 0x000000000002 FUNC GLOB D 2 UNDEF _init_tls
+ [27] 0x004019dc 0x0000000004fc FUNC GLOB D 2 UNDEF realloc
+ [28] 0x00401838 0x000000000000 FUNC GLOB D 1 .init _init
+ [29] 0x004019ec 0x000000000141 FUNC GLOB D 2 UNDEF localtime
+ [30] 0x00506cc8 0x000000000008 OBJT GLOB D 1 .bss environ
+ [31] 0x004019fc 0x00000000001e FUNC GLOB D 2 UNDEF mac_free
+ [32] 0x00401a0c 0x00000000005f FUNC GLOB D 2 UNDEF acl_get_entry
+ [33] 0x00401a1c 0x000000000028 FUNC GLOB D 3 UNDEF fts_set
+ [34] 0x00401a2c 0x000000000029 FUNC GLOB D 2 UNDEF strchr
+ [35] 0x00401a3c 0x0000000001e8 FUNC GLOB D 2 UNDEF strcoll
+ [36] 0x00506b80 0x000000000004 OBJT GLOB D 2 .bss __isthreaded
+ [37] 0x00401a4c 0x0000000002ad FUNC GLOB D 2 UNDEF getopt
+ [38] 0x00506150 0x000000000008 OBJT GLOB D 1 .data __progname
+ [39] 0x00401a5c 0x0000000002f8 FUNC GLOB D 2 UNDEF strmode
+ [40] 0x00401a6c 0x000000000095 FUNC GLOB D 2 UNDEF warnx
+ [41] 0x00401a7c 0x0000000003d6 FUNC GLOB D 0 UNDEF tputs
+ [42] 0x00506b88 0x000000000008 OBJT GLOB D 2 .bss optarg
+ [43] 0x00401a8c 0x000000000143 FUNC GLOB D 2 UNDEF sscanf
+ [44] 0x00401a9c 0x000000000054 FUNC GLOB D 2 UNDEF memset
+ [45] 0x00401aac 0x000000000008 FUNC GLOB D 2 UNDEF __error
+ [46] 0x00401abc 0x000000000000 FUNC GLOB D 2 UNDEF pathconf
+ [47] 0x00401acc 0x00000000012b FUNC GLOB D 3 UNDEF fts_children
+ [48] 0x00401adc 0x0000000000a2 FUNC GLOB D 2 UNDEF printf
+ [49] 0x00401aec 0x00000000010f FUNC GLOB D 2 UNDEF user_from_uid
+ [50] 0x00506b28 0x000000000000 NOTY GLOB D 1 ABS __bss_start
+ [51] 0x00401afc 0x0000000001f5 FUNC GLOB D 2 UNDEF snprintf
+ [52] 0x00401b0c 0x0000000000a8 FUNC GLOB D 2 UNDEF warn
+ [53] 0x00506b90 0x000000000004 OBJT GLOB D 2 .bss __mb_sb_limit
+ [54] 0x00401b1c 0x00000000063e FUNC GLOB D 0 UNDEF tgetent
+ [55] 0x00401b2c 0x00000000005f FUNC GLOB D 2 UNDEF signal
+ [56] 0x00401b3c 0x0000000004d8 FUNC GLOB D 3 UNDEF fts_read
+ [57] 0x00405b48 0x000000000000 FUNC GLOB D 1 .fini _fini
+ [58] 0x00401b4c 0x0000000002a5 FUNC GLOB D 2 UNDEF nl_langinfo
+ [59] 0x00401b5c 0x000000000093 FUNC GLOB D 2 UNDEF setenv
+ [60] 0x00506b98 0x000000000008 OBJT GLOB D 2 .bss __stdoutp
+ [61] 0x00401b6c 0x0000000000ca FUNC GLOB D 2 UNDEF fwrite
+ [62] 0x00506ba0 0x000000000008 OBJT GLOB D 2 .bss _CurrentRuneLocale
+ [63] 0x00401b7c 0x000000000285 FUNC GLOB D 3 UNDEF fts_open
+ [64] 0x00401b8c 0x000000000221 FUNC GLOB D 2 UNDEF getbsize
+ [65] 0x00401b9c 0x0000000000e6 FUNC GLOB D 2 UNDEF __swbuf
+ [66] 0x00401bac 0x00000000002f FUNC GLOB D 2 UNDEF exit
+ [67] 0x00401bbc 0x0000000000af FUNC GLOB D 2 UNDEF malloc
+ [68] 0x00401bcc 0x000000000005 FUNC GLOB D 2 UNDEF mac_get_file
+ [69] 0x00401bdc 0x0000000000aa FUNC GLOB D 2 UNDEF err
+ [70] 0x00506b28 0x000000000000 NOTY GLOB D 1 ABS _edata
+ [71] 0x00401bec 0x00000000003c FUNC GLOB D 2 UNDEF isatty
+ [72] 0x005068e0 0x000000000000 OBJT GLOB D 1 ABS _GLOBAL_OFFSET_TABLE_
+ [73] 0x00506d58 0x000000000000 NOTY GLOB D 1 ABS _end
+ [74] 0x00401bfc 0x000000000388 FUNC GLOB D 2 UNDEF setlocale
+ [75] 0x00506ba8 0x000000000008 OBJT GLOB D 2 .bss __stderrp
+ [76] 0x00401c0c 0x000000000076 FUNC GLOB D 2 UNDEF free
+ [77] 0x00506bb0 0x000000000004 OBJT GLOB D 2 .bss optind
+ [78] 0x00401c1c 0x000000000000 FUNC GLOB D 2 UNDEF getuid
+ [79] 0x00401c2c 0x00000000000c FUNC GLOB D 2 UNDEF __stack_chk_fail
+ [80] 0x00401c3c 0x00000000002f FUNC GLOB D 2 UNDEF atexit
+ [81] 0x00401c4c 0x000000000015 FUNC GLOB D 2 UNDEF acl_free
+ [82] 0x00401c5c 0x000000000000 FUNC GLOB D 2 UNDEF getpid
+ [83] 0x00401c6c 0x0000000000c7 FUNC GLOB D 2 UNDEF strlen
+ [84] 0x00401c7c 0x0000000000ae FUNC GLOB D 2 UNDEF strcpy
+ [85] 0x00000000 0x000000000000 NOTY WEAK D 0 UNDEF _Jv_RegisterClasses
+ [86] 0x00401c8c 0x000000000000 FUNC GLOB D 2 UNDEF readlink
+ [87] 0x00401c9c 0x000000000163 FUNC GLOB D 0 UNDEF tgetstr
+ [88] 0x00401cac 0x00000000005d FUNC GLOB D 2 UNDEF acl_get_file
diff --git a/test/elfdump/ts/exec1/@S@d%ls.err b/test/elfdump/ts/exec1/@S@d%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@d%ls.err
diff --git a/test/elfdump/ts/exec1/@S@d%ls.out b/test/elfdump/ts/exec1/@S@d%ls.out
new file mode 100644
index 0000000000000..0f11e6270b8bf
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@d%ls.out
@@ -0,0 +1,29 @@
+Dynamic Section: .dynamic
+ index tag value
+ [0] DT_NEEDED 0x1 libutil.so.7
+ [1] DT_NEEDED 0x5d libncurses.so.7
+ [2] DT_NEEDED 0x89 libc.so.7
+ [3] DT_INIT 0x401838
+ [4] DT_FINI 0x405b48
+ [5] DT_HASH 0x4001f8
+ [6] DT_STRTAB 0x400cc8
+ [7] DT_SYMTAB 0x400470
+ [8] DT_STRSZ 0x33c
+ [9] DT_SYMENT 0x18
+ [10] DT_DEBUG 0
+ [11] DT_PLTGOT 0x5068e0
+ [12] DT_PLTRELSZ 0x690
+ [13] DT_PLTREL 0x7
+ [14] DT_JMPREL 0x4011a8
+ [15] DT_RELA 0x4010e8
+ [16] DT_RELASZ 0xc0
+ [17] DT_RELAENT 0x18
+ [18] DT_VERNEED 0x4010b8
+ [19] DT_VERNEEDNUM 0x1
+ [20] DT_GNU_VERSYM 0x401004
+ [21] DT_NULL
+ [22] DT_NULL
+ [23] DT_NULL
+ [24] DT_NULL
+ [25] DT_NULL
+ [26] DT_NULL
diff --git a/test/elfdump/ts/exec1/@S@e%ls.err b/test/elfdump/ts/exec1/@S@e%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@e%ls.err
diff --git a/test/elfdump/ts/exec1/@S@e%ls.out b/test/elfdump/ts/exec1/@S@e%ls.out
new file mode 100644
index 0000000000000..e9920835c34d0
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@e%ls.out
@@ -0,0 +1,10 @@
+
+ELF Header
+ ei_magic: { 0x7f, E, L, F }
+ ei_class: ELFCLASS64 ei_data: ELFDATA2LSB
+ e_machine: EM_X86_64 e_version: EV_CURRENT
+ e_type: ET_EXEC
+ e_flags: 0
+ e_entry: 0x401cc0 e_ehsize: 64 e_shstrndx: 25
+ e_shoff: 0x6eb0 e_shentsize: 64 e_shnum: 26
+ e_phoff: 0x40 e_phentsize: 56 e_phnum: 7
diff --git a/test/elfdump/ts/exec1/@S@e@k%ls.err b/test/elfdump/ts/exec1/@S@e@k%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@e@k%ls.err
diff --git a/test/elfdump/ts/exec1/@S@e@k%ls.out b/test/elfdump/ts/exec1/@S@e@k%ls.out
new file mode 100644
index 0000000000000..bcbb7843b1a16
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@e@k%ls.out
@@ -0,0 +1,12 @@
+
+ELF Header
+ ei_magic: { 0x7f, E, L, F }
+ ei_class: ELFCLASS64 ei_data: ELFDATA2LSB
+ e_machine: EM_X86_64 e_version: EV_CURRENT
+ e_type: ET_EXEC
+ e_flags: 0
+ e_entry: 0x401cc0 e_ehsize: 64 e_shstrndx: 25
+ e_shoff: 0x6eb0 e_shentsize: 64 e_shnum: 26
+ e_phoff: 0x40 e_phentsize: 56 e_phnum: 7
+
+elf checksum: 0x8518
diff --git a/test/elfdump/ts/exec1/@S@e@p%ls.err b/test/elfdump/ts/exec1/@S@e@p%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@e@p%ls.err
diff --git a/test/elfdump/ts/exec1/@S@e@p%ls.out b/test/elfdump/ts/exec1/@S@e@p%ls.out
new file mode 100644
index 0000000000000..20e7b632c5a8a
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@e@p%ls.out
@@ -0,0 +1,52 @@
+
+ELF Header
+ ei_magic: { 0x7f, E, L, F }
+ ei_class: ELFCLASS64 ei_data: ELFDATA2LSB
+ e_machine: EM_X86_64 e_version: EV_CURRENT
+ e_type: ET_EXEC
+ e_flags: 0
+ e_entry: 0x401cc0 e_ehsize: 64 e_shstrndx: 25
+ e_shoff: 0x6eb0 e_shentsize: 64 e_shnum: 26
+ e_phoff: 0x40 e_phentsize: 56 e_phnum: 7
+
+Program Header[0]:
+ p_vaddr: 0x400040 p_flags: [ PF_X|PF_R ]
+ p_paddr: 0x400040 p_type: [ PT_PHDR ]
+ p_filesz: 0x188 p_memsz: 0x188
+ p_offset: 0x40 p_align: 0x8
+
+Program Header[1]:
+ p_vaddr: 0x4001c8 p_flags: [ PF_R ]
+ p_paddr: 0x4001c8 p_type: [ PT_INTERP ]
+ p_filesz: 0x15 p_memsz: 0x15
+ p_offset: 0x1c8 p_align: 0x1
+
+Program Header[2]:
+ p_vaddr: 0x400000 p_flags: [ PF_X|PF_R ]
+ p_paddr: 0x400000 p_type: [ PT_LOAD ]
+ p_filesz: 0x6144 p_memsz: 0x6144
+ p_offset: 0 p_align: 0x100000
+
+Program Header[3]:
+ p_vaddr: 0x506150 p_flags: [ PF_W|PF_R ]
+ p_paddr: 0x506150 p_type: [ PT_LOAD ]
+ p_filesz: 0x9d8 p_memsz: 0xc08
+ p_offset: 0x6150 p_align: 0x100000
+
+Program Header[4]:
+ p_vaddr: 0x506708 p_flags: [ PF_W|PF_R ]
+ p_paddr: 0x506708 p_type: [ PT_DYNAMIC ]
+ p_filesz: 0x1b0 p_memsz: 0x1b0
+ p_offset: 0x6708 p_align: 0x8
+
+Program Header[5]:
+ p_vaddr: 0x4001e0 p_flags: [ PF_R ]
+ p_paddr: 0x4001e0 p_type: [ PT_NOTE ]
+ p_filesz: 0x18 p_memsz: 0x18
+ p_offset: 0x1e0 p_align: 0x4
+
+Program Header[6]:
+ p_vaddr: 0x40613c p_flags: [ PF_R ]
+ p_paddr: 0x40613c p_type: [ PT_NULL ]
+ p_filesz: 0x8 p_memsz: 0x8
+ p_offset: 0x613c p_align: 0x4
diff --git a/test/elfdump/ts/exec1/@S@h%ls.err b/test/elfdump/ts/exec1/@S@h%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@h%ls.err
diff --git a/test/elfdump/ts/exec1/@S@h%ls.out b/test/elfdump/ts/exec1/@S@h%ls.out
new file mode 100644
index 0000000000000..94d81bca5de73
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@h%ls.out
@@ -0,0 +1,99 @@
+
+Hash Section: .hash
+ bucket symndx name
+ 0 [64] getbsize
+ 1 [85] _Jv_RegisterClasses
+ [46] pathconf
+ 2 [23] group_from_gid
+ 4 [61] fwrite
+ [34] strchr
+ 5 [84] strcpy
+ 7 [60] __stdoutp
+ [48] printf
+ [36] __isthreaded
+ 8 [58] nl_langinfo
+ 9 [82] getpid
+ [63] fts_open
+ 10 [70] _edata
+ 11 [22] ioctl
+ 13 [65] __swbuf
+ [35] strcoll
+ 14 [55] signal
+ 15 [68] mac_get_file
+ [59] setenv
+ [37] getopt
+ [32] acl_get_entry
+ [18] ___runetype
+ 16 [78] getuid
+ [75] __stderrp
+ 18 [44] memset
+ [19] mac_prepare_file_label
+ [14] putc
+ 19 [21] __stack_chk_guard
+ 20 [24] strftime
+ [6] mbrtowc
+ 21 [5] time
+ 22 [77] optind
+ [4] atoi
+ 23 [86] readlink
+ 24 [72] _GLOBAL_OFFSET_TABLE_
+ [29] localtime
+ 26 [28] _init
+ 27 [45] __error
+ 28 [38] __progname
+ 29 [73] _end
+ [40] warnx
+ [25] strerror
+ 32 [52] warn
+ [7] write
+ 33 [8] fputc
+ 34 [87] tgetstr
+ [43] sscanf
+ [2] puts
+ 35 [39] strmode
+ [27] realloc
+ 37 [10] _DYNAMIC
+ 38 [9] getenv
+ [1] fflagstostr
+ 42 [13] tgoto
+ 43 [62] _CurrentRuneLocale
+ 44 [54] tgetent
+ [20] mac_to_text
+ 45 [83] strlen
+ [71] isatty
+ 46 [12] humanize_number
+ 47 [30] environ
+ 48 [88] acl_get_file
+ 49 [50] __bss_start
+ [17] fputs
+ 50 [31] mac_free
+ 51 [42] optarg
+ 53 [81] acl_free
+ 54 [47] fts_children
+ 55 [74] setlocale
+ [41] tputs
+ 56 [80] atexit
+ [69] err
+ [51] snprintf
+ [16] mac_get_link
+ [3] fprintf
+ 59 [66] exit
+ [56] fts_read
+ 61 [76] free
+ [57] _fini
+ 62 [67] malloc
+ 64 [79] __stack_chk_fail
+ [49] user_from_uid
+ [15] strdup
+ 65 [53] __mb_sb_limit
+ [33] fts_set
+ [26] _init_tls
+ [11] kill
+
+ 17 buckets contain 0 symbols
+ 25 buckets contain 1 symbols
+ 17 buckets contain 2 symbols
+ 5 buckets contain 3 symbols
+ 1 buckets contain 4 symbols
+ 2 buckets contain 5 symbols
+ 67 buckets 88 symbols (globals)
diff --git a/test/elfdump/ts/exec1/@S@n%ls.err b/test/elfdump/ts/exec1/@S@n%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@n%ls.err
diff --git a/test/elfdump/ts/exec1/@S@n%ls.out b/test/elfdump/ts/exec1/@S@n%ls.out
new file mode 100644
index 0000000000000..802a846db707a
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@n%ls.out
@@ -0,0 +1,8 @@
+
+Note Section: .note.ABI-tag
+
+ type 0x1
+ namesz 0x8:
+FreeBSD
+ descsz 0x4:
+ desc[0] 4a 35 0c 00
diff --git a/test/elfdump/ts/exec1/@S@r%ls.err b/test/elfdump/ts/exec1/@S@r%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@r%ls.err
diff --git a/test/elfdump/ts/exec1/@S@r%ls.out b/test/elfdump/ts/exec1/@S@r%ls.out
new file mode 100644
index 0000000000000..7bfc084aa1409
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@r%ls.out
@@ -0,0 +1,84 @@
+
+Relocation Section: .rela.dyn
+ type offset addend section with respect to
+ R_X86_64_COPY 0x506b40 0 .rela.dyn __stack_chk_guard
+ R_X86_64_COPY 0x506b80 0 .rela.dyn __isthreaded
+ R_X86_64_COPY 0x506b88 0 .rela.dyn optarg
+ R_X86_64_COPY 0x506b90 0 .rela.dyn __mb_sb_limit
+ R_X86_64_COPY 0x506b98 0 .rela.dyn __stdoutp
+ R_X86_64_COPY 0x506ba0 0 .rela.dyn _CurrentRuneLocale
+ R_X86_64_COPY 0x506ba8 0 .rela.dyn __stderrp
+ R_X86_64_COPY 0x506bb0 0 .rela.dyn optind
+
+Relocation Section: .rela.plt
+ type offset addend section with respect to
+ R_X86_64_JMP_SLOT 0x5068f8 0 .rela.plt fflagstostr
+ R_X86_64_JMP_SLOT 0x506900 0 .rela.plt puts
+ R_X86_64_JMP_SLOT 0x506908 0 .rela.plt fprintf
+ R_X86_64_JMP_SLOT 0x506910 0 .rela.plt atoi
+ R_X86_64_JMP_SLOT 0x506918 0 .rela.plt time
+ R_X86_64_JMP_SLOT 0x506920 0 .rela.plt mbrtowc
+ R_X86_64_JMP_SLOT 0x506928 0 .rela.plt write
+ R_X86_64_JMP_SLOT 0x506930 0 .rela.plt fputc
+ R_X86_64_JMP_SLOT 0x506938 0 .rela.plt getenv
+ R_X86_64_JMP_SLOT 0x506940 0 .rela.plt kill
+ R_X86_64_JMP_SLOT 0x506948 0 .rela.plt humanize_number
+ R_X86_64_JMP_SLOT 0x506950 0 .rela.plt tgoto
+ R_X86_64_JMP_SLOT 0x506958 0 .rela.plt putc
+ R_X86_64_JMP_SLOT 0x506960 0 .rela.plt strdup
+ R_X86_64_JMP_SLOT 0x506968 0 .rela.plt mac_get_link
+ R_X86_64_JMP_SLOT 0x506970 0 .rela.plt fputs
+ R_X86_64_JMP_SLOT 0x506978 0 .rela.plt ___runetype
+ R_X86_64_JMP_SLOT 0x506980 0 .rela.plt mac_prepare_file_label
+ R_X86_64_JMP_SLOT 0x506988 0 .rela.plt mac_to_text
+ R_X86_64_JMP_SLOT 0x506990 0 .rela.plt ioctl
+ R_X86_64_JMP_SLOT 0x506998 0 .rela.plt group_from_gid
+ R_X86_64_JMP_SLOT 0x5069a0 0 .rela.plt strftime
+ R_X86_64_JMP_SLOT 0x5069a8 0 .rela.plt strerror
+ R_X86_64_JMP_SLOT 0x5069b0 0 .rela.plt _init_tls
+ R_X86_64_JMP_SLOT 0x5069b8 0 .rela.plt realloc
+ R_X86_64_JMP_SLOT 0x5069c0 0 .rela.plt localtime
+ R_X86_64_JMP_SLOT 0x5069c8 0 .rela.plt mac_free
+ R_X86_64_JMP_SLOT 0x5069d0 0 .rela.plt acl_get_entry
+ R_X86_64_JMP_SLOT 0x5069d8 0 .rela.plt fts_set
+ R_X86_64_JMP_SLOT 0x5069e0 0 .rela.plt strchr
+ R_X86_64_JMP_SLOT 0x5069e8 0 .rela.plt strcoll
+ R_X86_64_JMP_SLOT 0x5069f0 0 .rela.plt getopt
+ R_X86_64_JMP_SLOT 0x5069f8 0 .rela.plt strmode
+ R_X86_64_JMP_SLOT 0x506a00 0 .rela.plt warnx
+ R_X86_64_JMP_SLOT 0x506a08 0 .rela.plt tputs
+ R_X86_64_JMP_SLOT 0x506a10 0 .rela.plt sscanf
+ R_X86_64_JMP_SLOT 0x506a18 0 .rela.plt memset
+ R_X86_64_JMP_SLOT 0x506a20 0 .rela.plt __error
+ R_X86_64_JMP_SLOT 0x506a28 0 .rela.plt pathconf
+ R_X86_64_JMP_SLOT 0x506a30 0 .rela.plt fts_children
+ R_X86_64_JMP_SLOT 0x506a38 0 .rela.plt printf
+ R_X86_64_JMP_SLOT 0x506a40 0 .rela.plt user_from_uid
+ R_X86_64_JMP_SLOT 0x506a48 0 .rela.plt snprintf
+ R_X86_64_JMP_SLOT 0x506a50 0 .rela.plt warn
+ R_X86_64_JMP_SLOT 0x506a58 0 .rela.plt tgetent
+ R_X86_64_JMP_SLOT 0x506a60 0 .rela.plt signal
+ R_X86_64_JMP_SLOT 0x506a68 0 .rela.plt fts_read
+ R_X86_64_JMP_SLOT 0x506a70 0 .rela.plt nl_langinfo
+ R_X86_64_JMP_SLOT 0x506a78 0 .rela.plt setenv
+ R_X86_64_JMP_SLOT 0x506a80 0 .rela.plt fwrite
+ R_X86_64_JMP_SLOT 0x506a88 0 .rela.plt fts_open
+ R_X86_64_JMP_SLOT 0x506a90 0 .rela.plt getbsize
+ R_X86_64_JMP_SLOT 0x506a98 0 .rela.plt __swbuf
+ R_X86_64_JMP_SLOT 0x506aa0 0 .rela.plt exit
+ R_X86_64_JMP_SLOT 0x506aa8 0 .rela.plt malloc
+ R_X86_64_JMP_SLOT 0x506ab0 0 .rela.plt mac_get_file
+ R_X86_64_JMP_SLOT 0x506ab8 0 .rela.plt err
+ R_X86_64_JMP_SLOT 0x506ac0 0 .rela.plt isatty
+ R_X86_64_JMP_SLOT 0x506ac8 0 .rela.plt setlocale
+ R_X86_64_JMP_SLOT 0x506ad0 0 .rela.plt free
+ R_X86_64_JMP_SLOT 0x506ad8 0 .rela.plt getuid
+ R_X86_64_JMP_SLOT 0x506ae0 0 .rela.plt __stack_chk_fail
+ R_X86_64_JMP_SLOT 0x506ae8 0 .rela.plt atexit
+ R_X86_64_JMP_SLOT 0x506af0 0 .rela.plt acl_free
+ R_X86_64_JMP_SLOT 0x506af8 0 .rela.plt getpid
+ R_X86_64_JMP_SLOT 0x506b00 0 .rela.plt strlen
+ R_X86_64_JMP_SLOT 0x506b08 0 .rela.plt strcpy
+ R_X86_64_JMP_SLOT 0x506b10 0 .rela.plt readlink
+ R_X86_64_JMP_SLOT 0x506b18 0 .rela.plt tgetstr
+ R_X86_64_JMP_SLOT 0x506b20 0 .rela.plt acl_get_file
diff --git a/test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.err b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.err
diff --git a/test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.out b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.out
new file mode 100644
index 0000000000000..9c5b4c6a0b64d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn%ls.out
@@ -0,0 +1,11 @@
+
+Relocation Section: .rela.dyn
+ type offset addend section with respect to
+ R_X86_64_COPY 0x506b40 0 .rela.dyn __stack_chk_guard
+ R_X86_64_COPY 0x506b80 0 .rela.dyn __isthreaded
+ R_X86_64_COPY 0x506b88 0 .rela.dyn optarg
+ R_X86_64_COPY 0x506b90 0 .rela.dyn __mb_sb_limit
+ R_X86_64_COPY 0x506b98 0 .rela.dyn __stdoutp
+ R_X86_64_COPY 0x506ba0 0 .rela.dyn _CurrentRuneLocale
+ R_X86_64_COPY 0x506ba8 0 .rela.dyn __stderrp
+ R_X86_64_COPY 0x506bb0 0 .rela.dyn optind
diff --git a/test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.err b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.err
diff --git a/test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.out b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.out
new file mode 100644
index 0000000000000..7bfc084aa1409
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@r@N%.rela.dyn@N%.rela.plt%ls.out
@@ -0,0 +1,84 @@
+
+Relocation Section: .rela.dyn
+ type offset addend section with respect to
+ R_X86_64_COPY 0x506b40 0 .rela.dyn __stack_chk_guard
+ R_X86_64_COPY 0x506b80 0 .rela.dyn __isthreaded
+ R_X86_64_COPY 0x506b88 0 .rela.dyn optarg
+ R_X86_64_COPY 0x506b90 0 .rela.dyn __mb_sb_limit
+ R_X86_64_COPY 0x506b98 0 .rela.dyn __stdoutp
+ R_X86_64_COPY 0x506ba0 0 .rela.dyn _CurrentRuneLocale
+ R_X86_64_COPY 0x506ba8 0 .rela.dyn __stderrp
+ R_X86_64_COPY 0x506bb0 0 .rela.dyn optind
+
+Relocation Section: .rela.plt
+ type offset addend section with respect to
+ R_X86_64_JMP_SLOT 0x5068f8 0 .rela.plt fflagstostr
+ R_X86_64_JMP_SLOT 0x506900 0 .rela.plt puts
+ R_X86_64_JMP_SLOT 0x506908 0 .rela.plt fprintf
+ R_X86_64_JMP_SLOT 0x506910 0 .rela.plt atoi
+ R_X86_64_JMP_SLOT 0x506918 0 .rela.plt time
+ R_X86_64_JMP_SLOT 0x506920 0 .rela.plt mbrtowc
+ R_X86_64_JMP_SLOT 0x506928 0 .rela.plt write
+ R_X86_64_JMP_SLOT 0x506930 0 .rela.plt fputc
+ R_X86_64_JMP_SLOT 0x506938 0 .rela.plt getenv
+ R_X86_64_JMP_SLOT 0x506940 0 .rela.plt kill
+ R_X86_64_JMP_SLOT 0x506948 0 .rela.plt humanize_number
+ R_X86_64_JMP_SLOT 0x506950 0 .rela.plt tgoto
+ R_X86_64_JMP_SLOT 0x506958 0 .rela.plt putc
+ R_X86_64_JMP_SLOT 0x506960 0 .rela.plt strdup
+ R_X86_64_JMP_SLOT 0x506968 0 .rela.plt mac_get_link
+ R_X86_64_JMP_SLOT 0x506970 0 .rela.plt fputs
+ R_X86_64_JMP_SLOT 0x506978 0 .rela.plt ___runetype
+ R_X86_64_JMP_SLOT 0x506980 0 .rela.plt mac_prepare_file_label
+ R_X86_64_JMP_SLOT 0x506988 0 .rela.plt mac_to_text
+ R_X86_64_JMP_SLOT 0x506990 0 .rela.plt ioctl
+ R_X86_64_JMP_SLOT 0x506998 0 .rela.plt group_from_gid
+ R_X86_64_JMP_SLOT 0x5069a0 0 .rela.plt strftime
+ R_X86_64_JMP_SLOT 0x5069a8 0 .rela.plt strerror
+ R_X86_64_JMP_SLOT 0x5069b0 0 .rela.plt _init_tls
+ R_X86_64_JMP_SLOT 0x5069b8 0 .rela.plt realloc
+ R_X86_64_JMP_SLOT 0x5069c0 0 .rela.plt localtime
+ R_X86_64_JMP_SLOT 0x5069c8 0 .rela.plt mac_free
+ R_X86_64_JMP_SLOT 0x5069d0 0 .rela.plt acl_get_entry
+ R_X86_64_JMP_SLOT 0x5069d8 0 .rela.plt fts_set
+ R_X86_64_JMP_SLOT 0x5069e0 0 .rela.plt strchr
+ R_X86_64_JMP_SLOT 0x5069e8 0 .rela.plt strcoll
+ R_X86_64_JMP_SLOT 0x5069f0 0 .rela.plt getopt
+ R_X86_64_JMP_SLOT 0x5069f8 0 .rela.plt strmode
+ R_X86_64_JMP_SLOT 0x506a00 0 .rela.plt warnx
+ R_X86_64_JMP_SLOT 0x506a08 0 .rela.plt tputs
+ R_X86_64_JMP_SLOT 0x506a10 0 .rela.plt sscanf
+ R_X86_64_JMP_SLOT 0x506a18 0 .rela.plt memset
+ R_X86_64_JMP_SLOT 0x506a20 0 .rela.plt __error
+ R_X86_64_JMP_SLOT 0x506a28 0 .rela.plt pathconf
+ R_X86_64_JMP_SLOT 0x506a30 0 .rela.plt fts_children
+ R_X86_64_JMP_SLOT 0x506a38 0 .rela.plt printf
+ R_X86_64_JMP_SLOT 0x506a40 0 .rela.plt user_from_uid
+ R_X86_64_JMP_SLOT 0x506a48 0 .rela.plt snprintf
+ R_X86_64_JMP_SLOT 0x506a50 0 .rela.plt warn
+ R_X86_64_JMP_SLOT 0x506a58 0 .rela.plt tgetent
+ R_X86_64_JMP_SLOT 0x506a60 0 .rela.plt signal
+ R_X86_64_JMP_SLOT 0x506a68 0 .rela.plt fts_read
+ R_X86_64_JMP_SLOT 0x506a70 0 .rela.plt nl_langinfo
+ R_X86_64_JMP_SLOT 0x506a78 0 .rela.plt setenv
+ R_X86_64_JMP_SLOT 0x506a80 0 .rela.plt fwrite
+ R_X86_64_JMP_SLOT 0x506a88 0 .rela.plt fts_open
+ R_X86_64_JMP_SLOT 0x506a90 0 .rela.plt getbsize
+ R_X86_64_JMP_SLOT 0x506a98 0 .rela.plt __swbuf
+ R_X86_64_JMP_SLOT 0x506aa0 0 .rela.plt exit
+ R_X86_64_JMP_SLOT 0x506aa8 0 .rela.plt malloc
+ R_X86_64_JMP_SLOT 0x506ab0 0 .rela.plt mac_get_file
+ R_X86_64_JMP_SLOT 0x506ab8 0 .rela.plt err
+ R_X86_64_JMP_SLOT 0x506ac0 0 .rela.plt isatty
+ R_X86_64_JMP_SLOT 0x506ac8 0 .rela.plt setlocale
+ R_X86_64_JMP_SLOT 0x506ad0 0 .rela.plt free
+ R_X86_64_JMP_SLOT 0x506ad8 0 .rela.plt getuid
+ R_X86_64_JMP_SLOT 0x506ae0 0 .rela.plt __stack_chk_fail
+ R_X86_64_JMP_SLOT 0x506ae8 0 .rela.plt atexit
+ R_X86_64_JMP_SLOT 0x506af0 0 .rela.plt acl_free
+ R_X86_64_JMP_SLOT 0x506af8 0 .rela.plt getpid
+ R_X86_64_JMP_SLOT 0x506b00 0 .rela.plt strlen
+ R_X86_64_JMP_SLOT 0x506b08 0 .rela.plt strcpy
+ R_X86_64_JMP_SLOT 0x506b10 0 .rela.plt readlink
+ R_X86_64_JMP_SLOT 0x506b18 0 .rela.plt tgetstr
+ R_X86_64_JMP_SLOT 0x506b20 0 .rela.plt acl_get_file
diff --git a/test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.err b/test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.err
diff --git a/test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.out b/test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.out
new file mode 100644
index 0000000000000..c10bbc08e0415
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@s@N%.dynsym%ls.out
@@ -0,0 +1,92 @@
+
+Symbol Table Section: .dynsym
+ index value size type bind oth ver shndx name
+ [0] 0x00000000 0x000000000000 NOTY LOCL D 0 UNDEF
+ [1] 0x0040185c 0x00000000008a FUNC GLOB D 2 UNDEF fflagstostr
+ [2] 0x0040186c 0x0000000000d2 FUNC GLOB D 2 UNDEF puts
+ [3] 0x0040187c 0x000000000090 FUNC GLOB D 2 UNDEF fprintf
+ [4] 0x0040188c 0x000000000015 FUNC GLOB D 2 UNDEF atoi
+ [5] 0x0040189c 0x000000000032 FUNC GLOB D 2 UNDEF time
+ [6] 0x004018ac 0x00000000001b FUNC GLOB D 2 UNDEF mbrtowc
+ [7] 0x004018bc 0x000000000000 FUNC GLOB D 2 UNDEF write
+ [8] 0x004018cc 0x00000000009e FUNC GLOB D 2 UNDEF fputc
+ [9] 0x004018dc 0x000000000185 FUNC GLOB D 2 UNDEF getenv
+ [10] 0x00506708 0x000000000000 OBJT GLOB D 1 ABS _DYNAMIC
+ [11] 0x004018ec 0x000000000000 FUNC GLOB D 2 UNDEF kill
+ [12] 0x004018fc 0x0000000003bf FUNC GLOB D 0 UNDEF humanize_number
+ [13] 0x0040190c 0x0000000003e1 FUNC GLOB D 0 UNDEF tgoto
+ [14] 0x0040191c 0x00000000009e FUNC GLOB D 2 UNDEF putc
+ [15] 0x0040192c 0x000000000055 FUNC GLOB D 2 UNDEF strdup
+ [16] 0x0040193c 0x000000000005 FUNC GLOB D 2 UNDEF mac_get_link
+ [17] 0x0040194c 0x00000000009a FUNC GLOB D 2 UNDEF fputs
+ [18] 0x0040195c 0x000000000075 FUNC GLOB D 2 UNDEF ___runetype
+ [19] 0x0040196c 0x00000000000c FUNC GLOB D 2 UNDEF mac_prepare_file_label
+ [20] 0x0040197c 0x00000000001b FUNC GLOB D 2 UNDEF mac_to_text
+ [21] 0x00506b40 0x000000000040 OBJT GLOB D 2 .bss __stack_chk_guard
+ [22] 0x0040198c 0x000000000000 FUNC GLOB D 2 UNDEF ioctl
+ [23] 0x0040199c 0x00000000010f FUNC GLOB D 2 UNDEF group_from_gid
+ [24] 0x004019ac 0x000000000187 FUNC GLOB D 2 UNDEF strftime
+ [25] 0x004019bc 0x000000000030 FUNC GLOB D 2 UNDEF strerror
+ [26] 0x004019cc 0x000000000002 FUNC GLOB D 2 UNDEF _init_tls
+ [27] 0x004019dc 0x0000000004fc FUNC GLOB D 2 UNDEF realloc
+ [28] 0x00401838 0x000000000000 FUNC GLOB D 1 .init _init
+ [29] 0x004019ec 0x000000000141 FUNC GLOB D 2 UNDEF localtime
+ [30] 0x00506cc8 0x000000000008 OBJT GLOB D 1 .bss environ
+ [31] 0x004019fc 0x00000000001e FUNC GLOB D 2 UNDEF mac_free
+ [32] 0x00401a0c 0x00000000005f FUNC GLOB D 2 UNDEF acl_get_entry
+ [33] 0x00401a1c 0x000000000028 FUNC GLOB D 3 UNDEF fts_set
+ [34] 0x00401a2c 0x000000000029 FUNC GLOB D 2 UNDEF strchr
+ [35] 0x00401a3c 0x0000000001e8 FUNC GLOB D 2 UNDEF strcoll
+ [36] 0x00506b80 0x000000000004 OBJT GLOB D 2 .bss __isthreaded
+ [37] 0x00401a4c 0x0000000002ad FUNC GLOB D 2 UNDEF getopt
+ [38] 0x00506150 0x000000000008 OBJT GLOB D 1 .data __progname
+ [39] 0x00401a5c 0x0000000002f8 FUNC GLOB D 2 UNDEF strmode
+ [40] 0x00401a6c 0x000000000095 FUNC GLOB D 2 UNDEF warnx
+ [41] 0x00401a7c 0x0000000003d6 FUNC GLOB D 0 UNDEF tputs
+ [42] 0x00506b88 0x000000000008 OBJT GLOB D 2 .bss optarg
+ [43] 0x00401a8c 0x000000000143 FUNC GLOB D 2 UNDEF sscanf
+ [44] 0x00401a9c 0x000000000054 FUNC GLOB D 2 UNDEF memset
+ [45] 0x00401aac 0x000000000008 FUNC GLOB D 2 UNDEF __error
+ [46] 0x00401abc 0x000000000000 FUNC GLOB D 2 UNDEF pathconf
+ [47] 0x00401acc 0x00000000012b FUNC GLOB D 3 UNDEF fts_children
+ [48] 0x00401adc 0x0000000000a2 FUNC GLOB D 2 UNDEF printf
+ [49] 0x00401aec 0x00000000010f FUNC GLOB D 2 UNDEF user_from_uid
+ [50] 0x00506b28 0x000000000000 NOTY GLOB D 1 ABS __bss_start
+ [51] 0x00401afc 0x0000000001f5 FUNC GLOB D 2 UNDEF snprintf
+ [52] 0x00401b0c 0x0000000000a8 FUNC GLOB D 2 UNDEF warn
+ [53] 0x00506b90 0x000000000004 OBJT GLOB D 2 .bss __mb_sb_limit
+ [54] 0x00401b1c 0x00000000063e FUNC GLOB D 0 UNDEF tgetent
+ [55] 0x00401b2c 0x00000000005f FUNC GLOB D 2 UNDEF signal
+ [56] 0x00401b3c 0x0000000004d8 FUNC GLOB D 3 UNDEF fts_read
+ [57] 0x00405b48 0x000000000000 FUNC GLOB D 1 .fini _fini
+ [58] 0x00401b4c 0x0000000002a5 FUNC GLOB D 2 UNDEF nl_langinfo
+ [59] 0x00401b5c 0x000000000093 FUNC GLOB D 2 UNDEF setenv
+ [60] 0x00506b98 0x000000000008 OBJT GLOB D 2 .bss __stdoutp
+ [61] 0x00401b6c 0x0000000000ca FUNC GLOB D 2 UNDEF fwrite
+ [62] 0x00506ba0 0x000000000008 OBJT GLOB D 2 .bss _CurrentRuneLocale
+ [63] 0x00401b7c 0x000000000285 FUNC GLOB D 3 UNDEF fts_open
+ [64] 0x00401b8c 0x000000000221 FUNC GLOB D 2 UNDEF getbsize
+ [65] 0x00401b9c 0x0000000000e6 FUNC GLOB D 2 UNDEF __swbuf
+ [66] 0x00401bac 0x00000000002f FUNC GLOB D 2 UNDEF exit
+ [67] 0x00401bbc 0x0000000000af FUNC GLOB D 2 UNDEF malloc
+ [68] 0x00401bcc 0x000000000005 FUNC GLOB D 2 UNDEF mac_get_file
+ [69] 0x00401bdc 0x0000000000aa FUNC GLOB D 2 UNDEF err
+ [70] 0x00506b28 0x000000000000 NOTY GLOB D 1 ABS _edata
+ [71] 0x00401bec 0x00000000003c FUNC GLOB D 2 UNDEF isatty
+ [72] 0x005068e0 0x000000000000 OBJT GLOB D 1 ABS _GLOBAL_OFFSET_TABLE_
+ [73] 0x00506d58 0x000000000000 NOTY GLOB D 1 ABS _end
+ [74] 0x00401bfc 0x000000000388 FUNC GLOB D 2 UNDEF setlocale
+ [75] 0x00506ba8 0x000000000008 OBJT GLOB D 2 .bss __stderrp
+ [76] 0x00401c0c 0x000000000076 FUNC GLOB D 2 UNDEF free
+ [77] 0x00506bb0 0x000000000004 OBJT GLOB D 2 .bss optind
+ [78] 0x00401c1c 0x000000000000 FUNC GLOB D 2 UNDEF getuid
+ [79] 0x00401c2c 0x00000000000c FUNC GLOB D 2 UNDEF __stack_chk_fail
+ [80] 0x00401c3c 0x00000000002f FUNC GLOB D 2 UNDEF atexit
+ [81] 0x00401c4c 0x000000000015 FUNC GLOB D 2 UNDEF acl_free
+ [82] 0x00401c5c 0x000000000000 FUNC GLOB D 2 UNDEF getpid
+ [83] 0x00401c6c 0x0000000000c7 FUNC GLOB D 2 UNDEF strlen
+ [84] 0x00401c7c 0x0000000000ae FUNC GLOB D 2 UNDEF strcpy
+ [85] 0x00000000 0x000000000000 NOTY WEAK D 0 UNDEF _Jv_RegisterClasses
+ [86] 0x00401c8c 0x000000000000 FUNC GLOB D 2 UNDEF readlink
+ [87] 0x00401c9c 0x000000000163 FUNC GLOB D 0 UNDEF tgetstr
+ [88] 0x00401cac 0x00000000005d FUNC GLOB D 2 UNDEF acl_get_file
diff --git a/test/elfdump/ts/exec1/@S@v%ls.err b/test/elfdump/ts/exec1/@S@v%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@v%ls.err
diff --git a/test/elfdump/ts/exec1/@S@v%ls.out b/test/elfdump/ts/exec1/@S@v%ls.out
new file mode 100644
index 0000000000000..0e11e591d515b
--- /dev/null
+++ b/test/elfdump/ts/exec1/@S@v%ls.out
@@ -0,0 +1,5 @@
+
+Version Needed Section: .gnu.version_r
+ file version
+ libc.so.7 FBSD_1.1
+ FBSD_1.0
diff --git a/test/elfdump/ts/exec1/@c%ls.err b/test/elfdump/ts/exec1/@c%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c%ls.err
diff --git a/test/elfdump/ts/exec1/@c%ls.out b/test/elfdump/ts/exec1/@c%ls.out
new file mode 100644
index 0000000000000..9977556afece3
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c%ls.out
@@ -0,0 +1,314 @@
+
+section header:
+
+entry: 0
+ sh_name:
+ sh_type: SHT_NULL
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 0
+ sh_size: 0
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 0
+ sh_entsize: 0
+
+entry: 1
+ sh_name: .interp
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001c8
+ sh_offset: 456
+ sh_size: 21
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 2
+ sh_name: .note.ABI-tag
+ sh_type: SHT_NOTE
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001e0
+ sh_offset: 480
+ sh_size: 24
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 3
+ sh_name: .hash
+ sh_type: SHT_HASH
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001f8
+ sh_offset: 504
+ sh_size: 632
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 4
+
+entry: 4
+ sh_name: .dynsym
+ sh_type: SHT_DYNSYM
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400470
+ sh_offset: 1136
+ sh_size: 2136
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 5
+ sh_name: .dynstr
+ sh_type: SHT_STRTAB
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400cc8
+ sh_offset: 3272
+ sh_size: 828
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 6
+ sh_name: .gnu.version
+ sh_type: SHT_SUNW(GNU)_versym
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x401004
+ sh_offset: 4100
+ sh_size: 178
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 2
+ sh_entsize: 2
+
+entry: 7
+ sh_name: .gnu.version_r
+ sh_type: SHT_SUNW(GNU)_verneed
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010b8
+ sh_offset: 4280
+ sh_size: 48
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 8
+ sh_name: .rela.dyn
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010e8
+ sh_offset: 4328
+ sh_size: 192
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 9
+ sh_name: .rela.plt
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4011a8
+ sh_offset: 4520
+ sh_size: 1680
+ sh_link: 4
+ sh_info: 11
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 10
+ sh_name: .init
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401838
+ sh_offset: 6200
+ sh_size: 19
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 11
+ sh_name: .plt
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x40184c
+ sh_offset: 6220
+ sh_size: 1136
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 16
+
+entry: 12
+ sh_name: .text
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401cc0
+ sh_offset: 7360
+ sh_size: 16008
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 13
+ sh_name: .fini
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x405b48
+ sh_offset: 23368
+ sh_size: 14
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 14
+ sh_name: .rodata
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x405b60
+ sh_offset: 23392
+ sh_size: 1500
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 15
+ sh_name: .eh_frame_hdr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x40613c
+ sh_offset: 24892
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 16
+ sh_name: .data
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506150
+ sh_offset: 24912
+ sh_size: 76
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 17
+ sh_name: .eh_frame
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x5061a0
+ sh_offset: 24992
+ sh_size: 1384
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 18
+ sh_name: .dynamic
+ sh_type: SHT_DYNAMIC
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506708
+ sh_offset: 26376
+ sh_size: 432
+ sh_link: 5
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 16
+
+entry: 19
+ sh_name: .ctors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068b8
+ sh_offset: 26808
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 20
+ sh_name: .dtors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068c8
+ sh_offset: 26824
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 21
+ sh_name: .jcr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068d8
+ sh_offset: 26840
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 22
+ sh_name: .got
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068e0
+ sh_offset: 26848
+ sh_size: 584
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 8
+
+entry: 23
+ sh_name: .bss
+ sh_type: SHT_NOBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506b40
+ sh_offset: 27456
+ sh_size: 536
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 32
+ sh_entsize: 0
+
+entry: 24
+ sh_name: .comment
+ sh_type: SHT_PROGBITS
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 27456
+ sh_size: 672
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 25
+ sh_name: .shstrtab
+ sh_type: SHT_STRTAB
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 28128
+ sh_size: 206
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
diff --git a/test/elfdump/ts/exec1/@c@d%ls.err b/test/elfdump/ts/exec1/@c@d%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c@d%ls.err
diff --git a/test/elfdump/ts/exec1/@c@d%ls.out b/test/elfdump/ts/exec1/@c@d%ls.out
new file mode 100644
index 0000000000000..1d932cd186de4
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c@d%ls.out
@@ -0,0 +1,418 @@
+
+section header:
+
+entry: 0
+ sh_name:
+ sh_type: SHT_NULL
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 0
+ sh_size: 0
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 0
+ sh_entsize: 0
+
+entry: 1
+ sh_name: .interp
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001c8
+ sh_offset: 456
+ sh_size: 21
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 2
+ sh_name: .note.ABI-tag
+ sh_type: SHT_NOTE
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001e0
+ sh_offset: 480
+ sh_size: 24
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 3
+ sh_name: .hash
+ sh_type: SHT_HASH
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001f8
+ sh_offset: 504
+ sh_size: 632
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 4
+
+entry: 4
+ sh_name: .dynsym
+ sh_type: SHT_DYNSYM
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400470
+ sh_offset: 1136
+ sh_size: 2136
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 5
+ sh_name: .dynstr
+ sh_type: SHT_STRTAB
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400cc8
+ sh_offset: 3272
+ sh_size: 828
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 6
+ sh_name: .gnu.version
+ sh_type: SHT_SUNW(GNU)_versym
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x401004
+ sh_offset: 4100
+ sh_size: 178
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 2
+ sh_entsize: 2
+
+entry: 7
+ sh_name: .gnu.version_r
+ sh_type: SHT_SUNW(GNU)_verneed
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010b8
+ sh_offset: 4280
+ sh_size: 48
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 8
+ sh_name: .rela.dyn
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010e8
+ sh_offset: 4328
+ sh_size: 192
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 9
+ sh_name: .rela.plt
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4011a8
+ sh_offset: 4520
+ sh_size: 1680
+ sh_link: 4
+ sh_info: 11
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 10
+ sh_name: .init
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401838
+ sh_offset: 6200
+ sh_size: 19
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 11
+ sh_name: .plt
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x40184c
+ sh_offset: 6220
+ sh_size: 1136
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 16
+
+entry: 12
+ sh_name: .text
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401cc0
+ sh_offset: 7360
+ sh_size: 16008
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 13
+ sh_name: .fini
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x405b48
+ sh_offset: 23368
+ sh_size: 14
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 14
+ sh_name: .rodata
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x405b60
+ sh_offset: 23392
+ sh_size: 1500
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 15
+ sh_name: .eh_frame_hdr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x40613c
+ sh_offset: 24892
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 16
+ sh_name: .data
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506150
+ sh_offset: 24912
+ sh_size: 76
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 17
+ sh_name: .eh_frame
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x5061a0
+ sh_offset: 24992
+ sh_size: 1384
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 18
+ sh_name: .dynamic
+ sh_type: SHT_DYNAMIC
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506708
+ sh_offset: 26376
+ sh_size: 432
+ sh_link: 5
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 16
+
+entry: 19
+ sh_name: .ctors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068b8
+ sh_offset: 26808
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 20
+ sh_name: .dtors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068c8
+ sh_offset: 26824
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 21
+ sh_name: .jcr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068d8
+ sh_offset: 26840
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 22
+ sh_name: .got
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068e0
+ sh_offset: 26848
+ sh_size: 584
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 8
+
+entry: 23
+ sh_name: .bss
+ sh_type: SHT_NOBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506b40
+ sh_offset: 27456
+ sh_size: 536
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 32
+ sh_entsize: 0
+
+entry: 24
+ sh_name: .comment
+ sh_type: SHT_PROGBITS
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 27456
+ sh_size: 672
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 25
+ sh_name: .shstrtab
+ sh_type: SHT_STRTAB
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 28128
+ sh_size: 206
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+dynamic:
+
+entry: 0
+ d_tag: DT_NEEDED
+ d_val: libutil.so.7
+
+entry: 1
+ d_tag: DT_NEEDED
+ d_val: libncurses.so.7
+
+entry: 2
+ d_tag: DT_NEEDED
+ d_val: libc.so.7
+
+entry: 3
+ d_tag: DT_INIT
+ d_ptr: 0x401838
+
+entry: 4
+ d_tag: DT_FINI
+ d_ptr: 0x405b48
+
+entry: 5
+ d_tag: DT_HASH
+ d_ptr: 0x4001f8
+
+entry: 6
+ d_tag: DT_STRTAB
+ d_ptr: 0x400cc8
+
+entry: 7
+ d_tag: DT_SYMTAB
+ d_ptr: 0x400470
+
+entry: 8
+ d_tag: DT_STRSZ
+ d_val: 828
+
+entry: 9
+ d_tag: DT_SYMENT
+ d_val: 24
+
+entry: 10
+ d_tag: DT_DEBUG
+ d_ptr: 0
+
+entry: 11
+ d_tag: DT_PLTGOT
+ d_ptr: 0x5068e0
+
+entry: 12
+ d_tag: DT_PLTRELSZ
+ d_val: 1680
+
+entry: 13
+ d_tag: DT_PLTREL
+ d_val: 7
+
+entry: 14
+ d_tag: DT_JMPREL
+ d_ptr: 0x4011a8
+
+entry: 15
+ d_tag: DT_RELA
+ d_val: 4198632
+
+entry: 16
+ d_tag: DT_RELASZ
+ d_val: 192
+
+entry: 17
+ d_tag: DT_RELAENT
+ d_val: 24
+
+entry: 18
+ d_tag: DT_VERNEED
+ d_val: 4198584
+
+entry: 19
+ d_tag: DT_VERNEEDNUM
+ d_val: 1
+
+entry: 20
+ d_tag: DT_GNU_VERSYM
+ d_val: 4198404
+
+entry: 21
+ d_tag: DT_NULL
+
+entry: 22
+ d_tag: DT_NULL
+
+entry: 23
+ d_tag: DT_NULL
+
+entry: 24
+ d_tag: DT_NULL
+
+entry: 25
+ d_tag: DT_NULL
+
+entry: 26
+ d_tag: DT_NULL
diff --git a/test/elfdump/ts/exec1/@c@p@n%ls.err b/test/elfdump/ts/exec1/@c@p@n%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c@p@n%ls.err
diff --git a/test/elfdump/ts/exec1/@c@p@n%ls.out b/test/elfdump/ts/exec1/@c@p@n%ls.out
new file mode 100644
index 0000000000000..47815c85ab427
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c@p@n%ls.out
@@ -0,0 +1,389 @@
+
+program header:
+
+entry: 0
+ p_type: PT_PHDR
+ p_offset: 64
+ p_vaddr: 0x400040
+ p_paddr: 0x400040
+ p_filesz: 392
+ p_memsz: 392
+ p_flags: PF_X|PF_R
+ p_align: 8
+
+entry: 1
+ p_type: PT_INTERP
+ p_offset: 456
+ p_vaddr: 0x4001c8
+ p_paddr: 0x4001c8
+ p_filesz: 21
+ p_memsz: 21
+ p_flags: PF_R
+ p_align: 1
+
+entry: 2
+ p_type: PT_LOAD
+ p_offset: 0
+ p_vaddr: 0x400000
+ p_paddr: 0x400000
+ p_filesz: 24900
+ p_memsz: 24900
+ p_flags: PF_X|PF_R
+ p_align: 1048576
+
+entry: 3
+ p_type: PT_LOAD
+ p_offset: 24912
+ p_vaddr: 0x506150
+ p_paddr: 0x506150
+ p_filesz: 2520
+ p_memsz: 3080
+ p_flags: PF_W|PF_R
+ p_align: 1048576
+
+entry: 4
+ p_type: PT_DYNAMIC
+ p_offset: 26376
+ p_vaddr: 0x506708
+ p_paddr: 0x506708
+ p_filesz: 432
+ p_memsz: 432
+ p_flags: PF_W|PF_R
+ p_align: 8
+
+entry: 5
+ p_type: PT_NOTE
+ p_offset: 480
+ p_vaddr: 0x4001e0
+ p_paddr: 0x4001e0
+ p_filesz: 24
+ p_memsz: 24
+ p_flags: PF_R
+ p_align: 4
+
+entry: 6
+ p_type: PT_NULL
+ p_offset: 24892
+ p_vaddr: 0x40613c
+ p_paddr: 0x40613c
+ p_filesz: 8
+ p_memsz: 8
+ p_flags: PF_R
+ p_align: 4
+
+section header:
+
+entry: 0
+ sh_name:
+ sh_type: SHT_NULL
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 0
+ sh_size: 0
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 0
+ sh_entsize: 0
+
+entry: 1
+ sh_name: .interp
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001c8
+ sh_offset: 456
+ sh_size: 21
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 2
+ sh_name: .note.ABI-tag
+ sh_type: SHT_NOTE
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001e0
+ sh_offset: 480
+ sh_size: 24
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 3
+ sh_name: .hash
+ sh_type: SHT_HASH
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001f8
+ sh_offset: 504
+ sh_size: 632
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 4
+
+entry: 4
+ sh_name: .dynsym
+ sh_type: SHT_DYNSYM
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400470
+ sh_offset: 1136
+ sh_size: 2136
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 5
+ sh_name: .dynstr
+ sh_type: SHT_STRTAB
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400cc8
+ sh_offset: 3272
+ sh_size: 828
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 6
+ sh_name: .gnu.version
+ sh_type: SHT_SUNW(GNU)_versym
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x401004
+ sh_offset: 4100
+ sh_size: 178
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 2
+ sh_entsize: 2
+
+entry: 7
+ sh_name: .gnu.version_r
+ sh_type: SHT_SUNW(GNU)_verneed
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010b8
+ sh_offset: 4280
+ sh_size: 48
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 8
+ sh_name: .rela.dyn
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010e8
+ sh_offset: 4328
+ sh_size: 192
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 9
+ sh_name: .rela.plt
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4011a8
+ sh_offset: 4520
+ sh_size: 1680
+ sh_link: 4
+ sh_info: 11
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 10
+ sh_name: .init
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401838
+ sh_offset: 6200
+ sh_size: 19
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 11
+ sh_name: .plt
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x40184c
+ sh_offset: 6220
+ sh_size: 1136
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 16
+
+entry: 12
+ sh_name: .text
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401cc0
+ sh_offset: 7360
+ sh_size: 16008
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 13
+ sh_name: .fini
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x405b48
+ sh_offset: 23368
+ sh_size: 14
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 14
+ sh_name: .rodata
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x405b60
+ sh_offset: 23392
+ sh_size: 1500
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 15
+ sh_name: .eh_frame_hdr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x40613c
+ sh_offset: 24892
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 16
+ sh_name: .data
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506150
+ sh_offset: 24912
+ sh_size: 76
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 17
+ sh_name: .eh_frame
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x5061a0
+ sh_offset: 24992
+ sh_size: 1384
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 18
+ sh_name: .dynamic
+ sh_type: SHT_DYNAMIC
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506708
+ sh_offset: 26376
+ sh_size: 432
+ sh_link: 5
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 16
+
+entry: 19
+ sh_name: .ctors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068b8
+ sh_offset: 26808
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 20
+ sh_name: .dtors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068c8
+ sh_offset: 26824
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 21
+ sh_name: .jcr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068d8
+ sh_offset: 26840
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 22
+ sh_name: .got
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068e0
+ sh_offset: 26848
+ sh_size: 584
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 8
+
+entry: 23
+ sh_name: .bss
+ sh_type: SHT_NOBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506b40
+ sh_offset: 27456
+ sh_size: 536
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 32
+ sh_entsize: 0
+
+entry: 24
+ sh_name: .comment
+ sh_type: SHT_PROGBITS
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 27456
+ sh_size: 672
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 25
+ sh_name: .shstrtab
+ sh_type: SHT_STRTAB
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 28128
+ sh_size: 206
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+note (.note.ABI-tag):
+ FreeBSD 800074
diff --git a/test/elfdump/ts/exec1/@c@s%ls.err b/test/elfdump/ts/exec1/@c@s%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c@s%ls.err
diff --git a/test/elfdump/ts/exec1/@c@s%ls.out b/test/elfdump/ts/exec1/@c@s%ls.out
new file mode 100644
index 0000000000000..9cba3660f6127
--- /dev/null
+++ b/test/elfdump/ts/exec1/@c@s%ls.out
@@ -0,0 +1,939 @@
+
+section header:
+
+entry: 0
+ sh_name:
+ sh_type: SHT_NULL
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 0
+ sh_size: 0
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 0
+ sh_entsize: 0
+
+entry: 1
+ sh_name: .interp
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001c8
+ sh_offset: 456
+ sh_size: 21
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 2
+ sh_name: .note.ABI-tag
+ sh_type: SHT_NOTE
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001e0
+ sh_offset: 480
+ sh_size: 24
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 3
+ sh_name: .hash
+ sh_type: SHT_HASH
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001f8
+ sh_offset: 504
+ sh_size: 632
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 4
+
+entry: 4
+ sh_name: .dynsym
+ sh_type: SHT_DYNSYM
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400470
+ sh_offset: 1136
+ sh_size: 2136
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 5
+ sh_name: .dynstr
+ sh_type: SHT_STRTAB
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400cc8
+ sh_offset: 3272
+ sh_size: 828
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 6
+ sh_name: .gnu.version
+ sh_type: SHT_SUNW(GNU)_versym
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x401004
+ sh_offset: 4100
+ sh_size: 178
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 2
+ sh_entsize: 2
+
+entry: 7
+ sh_name: .gnu.version_r
+ sh_type: SHT_SUNW(GNU)_verneed
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010b8
+ sh_offset: 4280
+ sh_size: 48
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 8
+ sh_name: .rela.dyn
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010e8
+ sh_offset: 4328
+ sh_size: 192
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 9
+ sh_name: .rela.plt
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4011a8
+ sh_offset: 4520
+ sh_size: 1680
+ sh_link: 4
+ sh_info: 11
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 10
+ sh_name: .init
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401838
+ sh_offset: 6200
+ sh_size: 19
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 11
+ sh_name: .plt
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x40184c
+ sh_offset: 6220
+ sh_size: 1136
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 16
+
+entry: 12
+ sh_name: .text
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401cc0
+ sh_offset: 7360
+ sh_size: 16008
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 13
+ sh_name: .fini
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x405b48
+ sh_offset: 23368
+ sh_size: 14
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 14
+ sh_name: .rodata
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x405b60
+ sh_offset: 23392
+ sh_size: 1500
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 15
+ sh_name: .eh_frame_hdr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x40613c
+ sh_offset: 24892
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 16
+ sh_name: .data
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506150
+ sh_offset: 24912
+ sh_size: 76
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 17
+ sh_name: .eh_frame
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x5061a0
+ sh_offset: 24992
+ sh_size: 1384
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 18
+ sh_name: .dynamic
+ sh_type: SHT_DYNAMIC
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506708
+ sh_offset: 26376
+ sh_size: 432
+ sh_link: 5
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 16
+
+entry: 19
+ sh_name: .ctors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068b8
+ sh_offset: 26808
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 20
+ sh_name: .dtors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068c8
+ sh_offset: 26824
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 21
+ sh_name: .jcr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068d8
+ sh_offset: 26840
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 22
+ sh_name: .got
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068e0
+ sh_offset: 26848
+ sh_size: 584
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 8
+
+entry: 23
+ sh_name: .bss
+ sh_type: SHT_NOBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506b40
+ sh_offset: 27456
+ sh_size: 536
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 32
+ sh_entsize: 0
+
+entry: 24
+ sh_name: .comment
+ sh_type: SHT_PROGBITS
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 27456
+ sh_size: 672
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 25
+ sh_name: .shstrtab
+ sh_type: SHT_STRTAB
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 28128
+ sh_size: 206
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+symbol table (.dynsym):
+
+entry: 0
+ st_name:
+ st_value: 0
+ st_size: 0
+ st_info: STT_NOTYPE STB_LOCAL
+ st_shndx: 0
+
+entry: 1
+ st_name: fflagstostr
+ st_value: 0x40185c
+ st_size: 138
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 2
+ st_name: puts
+ st_value: 0x40186c
+ st_size: 210
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 3
+ st_name: fprintf
+ st_value: 0x40187c
+ st_size: 144
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 4
+ st_name: atoi
+ st_value: 0x40188c
+ st_size: 21
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 5
+ st_name: time
+ st_value: 0x40189c
+ st_size: 50
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 6
+ st_name: mbrtowc
+ st_value: 0x4018ac
+ st_size: 27
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 7
+ st_name: write
+ st_value: 0x4018bc
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 8
+ st_name: fputc
+ st_value: 0x4018cc
+ st_size: 158
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 9
+ st_name: getenv
+ st_value: 0x4018dc
+ st_size: 389
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 10
+ st_name: _DYNAMIC
+ st_value: 0x506708
+ st_size: 0
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 65521
+
+entry: 11
+ st_name: kill
+ st_value: 0x4018ec
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 12
+ st_name: humanize_number
+ st_value: 0x4018fc
+ st_size: 959
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 13
+ st_name: tgoto
+ st_value: 0x40190c
+ st_size: 993
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 14
+ st_name: putc
+ st_value: 0x40191c
+ st_size: 158
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 15
+ st_name: strdup
+ st_value: 0x40192c
+ st_size: 85
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 16
+ st_name: mac_get_link
+ st_value: 0x40193c
+ st_size: 5
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 17
+ st_name: fputs
+ st_value: 0x40194c
+ st_size: 154
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 18
+ st_name: ___runetype
+ st_value: 0x40195c
+ st_size: 117
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 19
+ st_name: mac_prepare_file_label
+ st_value: 0x40196c
+ st_size: 12
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 20
+ st_name: mac_to_text
+ st_value: 0x40197c
+ st_size: 27
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 21
+ st_name: __stack_chk_guard
+ st_value: 0x506b40
+ st_size: 64
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 22
+ st_name: ioctl
+ st_value: 0x40198c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 23
+ st_name: group_from_gid
+ st_value: 0x40199c
+ st_size: 271
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 24
+ st_name: strftime
+ st_value: 0x4019ac
+ st_size: 391
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 25
+ st_name: strerror
+ st_value: 0x4019bc
+ st_size: 48
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 26
+ st_name: _init_tls
+ st_value: 0x4019cc
+ st_size: 2
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 27
+ st_name: realloc
+ st_value: 0x4019dc
+ st_size: 1276
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 28
+ st_name: _init
+ st_value: 0x401838
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 10
+
+entry: 29
+ st_name: localtime
+ st_value: 0x4019ec
+ st_size: 321
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 30
+ st_name: environ
+ st_value: 0x506cc8
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 31
+ st_name: mac_free
+ st_value: 0x4019fc
+ st_size: 30
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 32
+ st_name: acl_get_entry
+ st_value: 0x401a0c
+ st_size: 95
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 33
+ st_name: fts_set
+ st_value: 0x401a1c
+ st_size: 40
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 34
+ st_name: strchr
+ st_value: 0x401a2c
+ st_size: 41
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 35
+ st_name: strcoll
+ st_value: 0x401a3c
+ st_size: 488
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 36
+ st_name: __isthreaded
+ st_value: 0x506b80
+ st_size: 4
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 37
+ st_name: getopt
+ st_value: 0x401a4c
+ st_size: 685
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 38
+ st_name: __progname
+ st_value: 0x506150
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 16
+
+entry: 39
+ st_name: strmode
+ st_value: 0x401a5c
+ st_size: 760
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 40
+ st_name: warnx
+ st_value: 0x401a6c
+ st_size: 149
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 41
+ st_name: tputs
+ st_value: 0x401a7c
+ st_size: 982
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 42
+ st_name: optarg
+ st_value: 0x506b88
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 43
+ st_name: sscanf
+ st_value: 0x401a8c
+ st_size: 323
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 44
+ st_name: memset
+ st_value: 0x401a9c
+ st_size: 84
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 45
+ st_name: __error
+ st_value: 0x401aac
+ st_size: 8
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 46
+ st_name: pathconf
+ st_value: 0x401abc
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 47
+ st_name: fts_children
+ st_value: 0x401acc
+ st_size: 299
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 48
+ st_name: printf
+ st_value: 0x401adc
+ st_size: 162
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 49
+ st_name: user_from_uid
+ st_value: 0x401aec
+ st_size: 271
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 50
+ st_name: __bss_start
+ st_value: 0x506b28
+ st_size: 0
+ st_info: STT_NOTYPE STB_GLOBAL
+ st_shndx: 65521
+
+entry: 51
+ st_name: snprintf
+ st_value: 0x401afc
+ st_size: 501
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 52
+ st_name: warn
+ st_value: 0x401b0c
+ st_size: 168
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 53
+ st_name: __mb_sb_limit
+ st_value: 0x506b90
+ st_size: 4
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 54
+ st_name: tgetent
+ st_value: 0x401b1c
+ st_size: 1598
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 55
+ st_name: signal
+ st_value: 0x401b2c
+ st_size: 95
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 56
+ st_name: fts_read
+ st_value: 0x401b3c
+ st_size: 1240
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 57
+ st_name: _fini
+ st_value: 0x405b48
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 13
+
+entry: 58
+ st_name: nl_langinfo
+ st_value: 0x401b4c
+ st_size: 677
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 59
+ st_name: setenv
+ st_value: 0x401b5c
+ st_size: 147
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 60
+ st_name: __stdoutp
+ st_value: 0x506b98
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 61
+ st_name: fwrite
+ st_value: 0x401b6c
+ st_size: 202
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 62
+ st_name: _CurrentRuneLocale
+ st_value: 0x506ba0
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 63
+ st_name: fts_open
+ st_value: 0x401b7c
+ st_size: 645
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 64
+ st_name: getbsize
+ st_value: 0x401b8c
+ st_size: 545
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 65
+ st_name: __swbuf
+ st_value: 0x401b9c
+ st_size: 230
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 66
+ st_name: exit
+ st_value: 0x401bac
+ st_size: 47
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 67
+ st_name: malloc
+ st_value: 0x401bbc
+ st_size: 175
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 68
+ st_name: mac_get_file
+ st_value: 0x401bcc
+ st_size: 5
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 69
+ st_name: err
+ st_value: 0x401bdc
+ st_size: 170
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 70
+ st_name: _edata
+ st_value: 0x506b28
+ st_size: 0
+ st_info: STT_NOTYPE STB_GLOBAL
+ st_shndx: 65521
+
+entry: 71
+ st_name: isatty
+ st_value: 0x401bec
+ st_size: 60
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 72
+ st_name: _GLOBAL_OFFSET_TABLE_
+ st_value: 0x5068e0
+ st_size: 0
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 65521
+
+entry: 73
+ st_name: _end
+ st_value: 0x506d58
+ st_size: 0
+ st_info: STT_NOTYPE STB_GLOBAL
+ st_shndx: 65521
+
+entry: 74
+ st_name: setlocale
+ st_value: 0x401bfc
+ st_size: 904
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 75
+ st_name: __stderrp
+ st_value: 0x506ba8
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 76
+ st_name: free
+ st_value: 0x401c0c
+ st_size: 118
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 77
+ st_name: optind
+ st_value: 0x506bb0
+ st_size: 4
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 78
+ st_name: getuid
+ st_value: 0x401c1c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 79
+ st_name: __stack_chk_fail
+ st_value: 0x401c2c
+ st_size: 12
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 80
+ st_name: atexit
+ st_value: 0x401c3c
+ st_size: 47
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 81
+ st_name: acl_free
+ st_value: 0x401c4c
+ st_size: 21
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 82
+ st_name: getpid
+ st_value: 0x401c5c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 83
+ st_name: strlen
+ st_value: 0x401c6c
+ st_size: 199
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 84
+ st_name: strcpy
+ st_value: 0x401c7c
+ st_size: 174
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 85
+ st_name: _Jv_RegisterClasses
+ st_value: 0
+ st_size: 0
+ st_info: STT_NOTYPE STB_WEAK
+ st_shndx: 0
+
+entry: 86
+ st_name: readlink
+ st_value: 0x401c8c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 87
+ st_name: tgetstr
+ st_value: 0x401c9c
+ st_size: 355
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 88
+ st_name: acl_get_file
+ st_value: 0x401cac
+ st_size: 93
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
diff --git a/test/elfdump/ts/exec1/@e%ls.err b/test/elfdump/ts/exec1/@e%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e%ls.err
diff --git a/test/elfdump/ts/exec1/@e%ls.out b/test/elfdump/ts/exec1/@e%ls.out
new file mode 100644
index 0000000000000..9a2ee83110624
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e%ls.out
@@ -0,0 +1,17 @@
+
+elf header:
+
+ e_ident: ELFCLASS64 ELFDATA2LSB ELFOSABI_FREEBSD
+ e_type: ET_EXEC
+ e_machine: EM_X86_64
+ e_version: EV_CURRENT
+ e_entry: 0x401cc0
+ e_phoff: 64
+ e_shoff: 28336
+ e_flags: 0
+ e_ehsize: 64
+ e_phentsize: 56
+ e_phnum: 7
+ e_shentsize: 64
+ e_shnum: 26
+ e_shstrndx: 25
diff --git a/test/elfdump/ts/exec1/@e@d%ls.err b/test/elfdump/ts/exec1/@e@d%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e@d%ls.err
diff --git a/test/elfdump/ts/exec1/@e@d%ls.out b/test/elfdump/ts/exec1/@e@d%ls.out
new file mode 100644
index 0000000000000..b70a2634acb94
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e@d%ls.out
@@ -0,0 +1,121 @@
+
+elf header:
+
+ e_ident: ELFCLASS64 ELFDATA2LSB ELFOSABI_FREEBSD
+ e_type: ET_EXEC
+ e_machine: EM_X86_64
+ e_version: EV_CURRENT
+ e_entry: 0x401cc0
+ e_phoff: 64
+ e_shoff: 28336
+ e_flags: 0
+ e_ehsize: 64
+ e_phentsize: 56
+ e_phnum: 7
+ e_shentsize: 64
+ e_shnum: 26
+ e_shstrndx: 25
+
+dynamic:
+
+entry: 0
+ d_tag: DT_NEEDED
+ d_val: libutil.so.7
+
+entry: 1
+ d_tag: DT_NEEDED
+ d_val: libncurses.so.7
+
+entry: 2
+ d_tag: DT_NEEDED
+ d_val: libc.so.7
+
+entry: 3
+ d_tag: DT_INIT
+ d_ptr: 0x401838
+
+entry: 4
+ d_tag: DT_FINI
+ d_ptr: 0x405b48
+
+entry: 5
+ d_tag: DT_HASH
+ d_ptr: 0x4001f8
+
+entry: 6
+ d_tag: DT_STRTAB
+ d_ptr: 0x400cc8
+
+entry: 7
+ d_tag: DT_SYMTAB
+ d_ptr: 0x400470
+
+entry: 8
+ d_tag: DT_STRSZ
+ d_val: 828
+
+entry: 9
+ d_tag: DT_SYMENT
+ d_val: 24
+
+entry: 10
+ d_tag: DT_DEBUG
+ d_ptr: 0
+
+entry: 11
+ d_tag: DT_PLTGOT
+ d_ptr: 0x5068e0
+
+entry: 12
+ d_tag: DT_PLTRELSZ
+ d_val: 1680
+
+entry: 13
+ d_tag: DT_PLTREL
+ d_val: 7
+
+entry: 14
+ d_tag: DT_JMPREL
+ d_ptr: 0x4011a8
+
+entry: 15
+ d_tag: DT_RELA
+ d_val: 4198632
+
+entry: 16
+ d_tag: DT_RELASZ
+ d_val: 192
+
+entry: 17
+ d_tag: DT_RELAENT
+ d_val: 24
+
+entry: 18
+ d_tag: DT_VERNEED
+ d_val: 4198584
+
+entry: 19
+ d_tag: DT_VERNEEDNUM
+ d_val: 1
+
+entry: 20
+ d_tag: DT_GNU_VERSYM
+ d_val: 4198404
+
+entry: 21
+ d_tag: DT_NULL
+
+entry: 22
+ d_tag: DT_NULL
+
+entry: 23
+ d_tag: DT_NULL
+
+entry: 24
+ d_tag: DT_NULL
+
+entry: 25
+ d_tag: DT_NULL
+
+entry: 26
+ d_tag: DT_NULL
diff --git a/test/elfdump/ts/exec1/@e@p%ls.err b/test/elfdump/ts/exec1/@e@p%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e@p%ls.err
diff --git a/test/elfdump/ts/exec1/@e@p%ls.out b/test/elfdump/ts/exec1/@e@p%ls.out
new file mode 100644
index 0000000000000..9eecdf39c2247
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e@p%ls.out
@@ -0,0 +1,89 @@
+
+elf header:
+
+ e_ident: ELFCLASS64 ELFDATA2LSB ELFOSABI_FREEBSD
+ e_type: ET_EXEC
+ e_machine: EM_X86_64
+ e_version: EV_CURRENT
+ e_entry: 0x401cc0
+ e_phoff: 64
+ e_shoff: 28336
+ e_flags: 0
+ e_ehsize: 64
+ e_phentsize: 56
+ e_phnum: 7
+ e_shentsize: 64
+ e_shnum: 26
+ e_shstrndx: 25
+
+program header:
+
+entry: 0
+ p_type: PT_PHDR
+ p_offset: 64
+ p_vaddr: 0x400040
+ p_paddr: 0x400040
+ p_filesz: 392
+ p_memsz: 392
+ p_flags: PF_X|PF_R
+ p_align: 8
+
+entry: 1
+ p_type: PT_INTERP
+ p_offset: 456
+ p_vaddr: 0x4001c8
+ p_paddr: 0x4001c8
+ p_filesz: 21
+ p_memsz: 21
+ p_flags: PF_R
+ p_align: 1
+
+entry: 2
+ p_type: PT_LOAD
+ p_offset: 0
+ p_vaddr: 0x400000
+ p_paddr: 0x400000
+ p_filesz: 24900
+ p_memsz: 24900
+ p_flags: PF_X|PF_R
+ p_align: 1048576
+
+entry: 3
+ p_type: PT_LOAD
+ p_offset: 24912
+ p_vaddr: 0x506150
+ p_paddr: 0x506150
+ p_filesz: 2520
+ p_memsz: 3080
+ p_flags: PF_W|PF_R
+ p_align: 1048576
+
+entry: 4
+ p_type: PT_DYNAMIC
+ p_offset: 26376
+ p_vaddr: 0x506708
+ p_paddr: 0x506708
+ p_filesz: 432
+ p_memsz: 432
+ p_flags: PF_W|PF_R
+ p_align: 8
+
+entry: 5
+ p_type: PT_NOTE
+ p_offset: 480
+ p_vaddr: 0x4001e0
+ p_paddr: 0x4001e0
+ p_filesz: 24
+ p_memsz: 24
+ p_flags: PF_R
+ p_align: 4
+
+entry: 6
+ p_type: PT_NULL
+ p_offset: 24892
+ p_vaddr: 0x40613c
+ p_paddr: 0x40613c
+ p_filesz: 8
+ p_memsz: 8
+ p_flags: PF_R
+ p_align: 4
diff --git a/test/elfdump/ts/exec1/@e@p@c@d%ls.err b/test/elfdump/ts/exec1/@e@p@c@d%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e@p@c@d%ls.err
diff --git a/test/elfdump/ts/exec1/@e@p@c@d%ls.out b/test/elfdump/ts/exec1/@e@p@c@d%ls.out
new file mode 100644
index 0000000000000..83e63661d08af
--- /dev/null
+++ b/test/elfdump/ts/exec1/@e@p@c@d%ls.out
@@ -0,0 +1,507 @@
+
+elf header:
+
+ e_ident: ELFCLASS64 ELFDATA2LSB ELFOSABI_FREEBSD
+ e_type: ET_EXEC
+ e_machine: EM_X86_64
+ e_version: EV_CURRENT
+ e_entry: 0x401cc0
+ e_phoff: 64
+ e_shoff: 28336
+ e_flags: 0
+ e_ehsize: 64
+ e_phentsize: 56
+ e_phnum: 7
+ e_shentsize: 64
+ e_shnum: 26
+ e_shstrndx: 25
+
+program header:
+
+entry: 0
+ p_type: PT_PHDR
+ p_offset: 64
+ p_vaddr: 0x400040
+ p_paddr: 0x400040
+ p_filesz: 392
+ p_memsz: 392
+ p_flags: PF_X|PF_R
+ p_align: 8
+
+entry: 1
+ p_type: PT_INTERP
+ p_offset: 456
+ p_vaddr: 0x4001c8
+ p_paddr: 0x4001c8
+ p_filesz: 21
+ p_memsz: 21
+ p_flags: PF_R
+ p_align: 1
+
+entry: 2
+ p_type: PT_LOAD
+ p_offset: 0
+ p_vaddr: 0x400000
+ p_paddr: 0x400000
+ p_filesz: 24900
+ p_memsz: 24900
+ p_flags: PF_X|PF_R
+ p_align: 1048576
+
+entry: 3
+ p_type: PT_LOAD
+ p_offset: 24912
+ p_vaddr: 0x506150
+ p_paddr: 0x506150
+ p_filesz: 2520
+ p_memsz: 3080
+ p_flags: PF_W|PF_R
+ p_align: 1048576
+
+entry: 4
+ p_type: PT_DYNAMIC
+ p_offset: 26376
+ p_vaddr: 0x506708
+ p_paddr: 0x506708
+ p_filesz: 432
+ p_memsz: 432
+ p_flags: PF_W|PF_R
+ p_align: 8
+
+entry: 5
+ p_type: PT_NOTE
+ p_offset: 480
+ p_vaddr: 0x4001e0
+ p_paddr: 0x4001e0
+ p_filesz: 24
+ p_memsz: 24
+ p_flags: PF_R
+ p_align: 4
+
+entry: 6
+ p_type: PT_NULL
+ p_offset: 24892
+ p_vaddr: 0x40613c
+ p_paddr: 0x40613c
+ p_filesz: 8
+ p_memsz: 8
+ p_flags: PF_R
+ p_align: 4
+
+section header:
+
+entry: 0
+ sh_name:
+ sh_type: SHT_NULL
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 0
+ sh_size: 0
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 0
+ sh_entsize: 0
+
+entry: 1
+ sh_name: .interp
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001c8
+ sh_offset: 456
+ sh_size: 21
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 2
+ sh_name: .note.ABI-tag
+ sh_type: SHT_NOTE
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001e0
+ sh_offset: 480
+ sh_size: 24
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 3
+ sh_name: .hash
+ sh_type: SHT_HASH
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4001f8
+ sh_offset: 504
+ sh_size: 632
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 4
+
+entry: 4
+ sh_name: .dynsym
+ sh_type: SHT_DYNSYM
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400470
+ sh_offset: 1136
+ sh_size: 2136
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 5
+ sh_name: .dynstr
+ sh_type: SHT_STRTAB
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x400cc8
+ sh_offset: 3272
+ sh_size: 828
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 6
+ sh_name: .gnu.version
+ sh_type: SHT_SUNW(GNU)_versym
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x401004
+ sh_offset: 4100
+ sh_size: 178
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 2
+ sh_entsize: 2
+
+entry: 7
+ sh_name: .gnu.version_r
+ sh_type: SHT_SUNW(GNU)_verneed
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010b8
+ sh_offset: 4280
+ sh_size: 48
+ sh_link: 5
+ sh_info: 1
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 8
+ sh_name: .rela.dyn
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4010e8
+ sh_offset: 4328
+ sh_size: 192
+ sh_link: 4
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 9
+ sh_name: .rela.plt
+ sh_type: SHT_RELA
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x4011a8
+ sh_offset: 4520
+ sh_size: 1680
+ sh_link: 4
+ sh_info: 11
+ sh_addralign: 8
+ sh_entsize: 24
+
+entry: 10
+ sh_name: .init
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401838
+ sh_offset: 6200
+ sh_size: 19
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 11
+ sh_name: .plt
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x40184c
+ sh_offset: 6220
+ sh_size: 1136
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 16
+
+entry: 12
+ sh_name: .text
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x401cc0
+ sh_offset: 7360
+ sh_size: 16008
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 13
+ sh_name: .fini
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC|SHF_EXECINSTR
+ sh_addr: 0x405b48
+ sh_offset: 23368
+ sh_size: 14
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 14
+ sh_name: .rodata
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x405b60
+ sh_offset: 23392
+ sh_size: 1500
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 15
+ sh_name: .eh_frame_hdr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x40613c
+ sh_offset: 24892
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 4
+ sh_entsize: 0
+
+entry: 16
+ sh_name: .data
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506150
+ sh_offset: 24912
+ sh_size: 76
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 16
+ sh_entsize: 0
+
+entry: 17
+ sh_name: .eh_frame
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_ALLOC
+ sh_addr: 0x5061a0
+ sh_offset: 24992
+ sh_size: 1384
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 18
+ sh_name: .dynamic
+ sh_type: SHT_DYNAMIC
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506708
+ sh_offset: 26376
+ sh_size: 432
+ sh_link: 5
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 16
+
+entry: 19
+ sh_name: .ctors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068b8
+ sh_offset: 26808
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 20
+ sh_name: .dtors
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068c8
+ sh_offset: 26824
+ sh_size: 16
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 21
+ sh_name: .jcr
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068d8
+ sh_offset: 26840
+ sh_size: 8
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 0
+
+entry: 22
+ sh_name: .got
+ sh_type: SHT_PROGBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x5068e0
+ sh_offset: 26848
+ sh_size: 584
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 8
+ sh_entsize: 8
+
+entry: 23
+ sh_name: .bss
+ sh_type: SHT_NOBITS
+ sh_flags: SHF_WRITE|SHF_ALLOC
+ sh_addr: 0x506b40
+ sh_offset: 27456
+ sh_size: 536
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 32
+ sh_entsize: 0
+
+entry: 24
+ sh_name: .comment
+ sh_type: SHT_PROGBITS
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 27456
+ sh_size: 672
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+entry: 25
+ sh_name: .shstrtab
+ sh_type: SHT_STRTAB
+ sh_flags:
+ sh_addr: 0
+ sh_offset: 28128
+ sh_size: 206
+ sh_link: 0
+ sh_info: 0
+ sh_addralign: 1
+ sh_entsize: 0
+
+dynamic:
+
+entry: 0
+ d_tag: DT_NEEDED
+ d_val: libutil.so.7
+
+entry: 1
+ d_tag: DT_NEEDED
+ d_val: libncurses.so.7
+
+entry: 2
+ d_tag: DT_NEEDED
+ d_val: libc.so.7
+
+entry: 3
+ d_tag: DT_INIT
+ d_ptr: 0x401838
+
+entry: 4
+ d_tag: DT_FINI
+ d_ptr: 0x405b48
+
+entry: 5
+ d_tag: DT_HASH
+ d_ptr: 0x4001f8
+
+entry: 6
+ d_tag: DT_STRTAB
+ d_ptr: 0x400cc8
+
+entry: 7
+ d_tag: DT_SYMTAB
+ d_ptr: 0x400470
+
+entry: 8
+ d_tag: DT_STRSZ
+ d_val: 828
+
+entry: 9
+ d_tag: DT_SYMENT
+ d_val: 24
+
+entry: 10
+ d_tag: DT_DEBUG
+ d_ptr: 0
+
+entry: 11
+ d_tag: DT_PLTGOT
+ d_ptr: 0x5068e0
+
+entry: 12
+ d_tag: DT_PLTRELSZ
+ d_val: 1680
+
+entry: 13
+ d_tag: DT_PLTREL
+ d_val: 7
+
+entry: 14
+ d_tag: DT_JMPREL
+ d_ptr: 0x4011a8
+
+entry: 15
+ d_tag: DT_RELA
+ d_val: 4198632
+
+entry: 16
+ d_tag: DT_RELASZ
+ d_val: 192
+
+entry: 17
+ d_tag: DT_RELAENT
+ d_val: 24
+
+entry: 18
+ d_tag: DT_VERNEED
+ d_val: 4198584
+
+entry: 19
+ d_tag: DT_VERNEEDNUM
+ d_val: 1
+
+entry: 20
+ d_tag: DT_GNU_VERSYM
+ d_val: 4198404
+
+entry: 21
+ d_tag: DT_NULL
+
+entry: 22
+ d_tag: DT_NULL
+
+entry: 23
+ d_tag: DT_NULL
+
+entry: 24
+ d_tag: DT_NULL
+
+entry: 25
+ d_tag: DT_NULL
+
+entry: 26
+ d_tag: DT_NULL
diff --git a/test/elfdump/ts/exec1/@n%ls.err b/test/elfdump/ts/exec1/@n%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@n%ls.err
diff --git a/test/elfdump/ts/exec1/@n%ls.out b/test/elfdump/ts/exec1/@n%ls.out
new file mode 100644
index 0000000000000..ce54837c76ddf
--- /dev/null
+++ b/test/elfdump/ts/exec1/@n%ls.out
@@ -0,0 +1,3 @@
+
+note (.note.ABI-tag):
+ FreeBSD 800074
diff --git a/test/elfdump/ts/exec1/@p@e%ls.err b/test/elfdump/ts/exec1/@p@e%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@p@e%ls.err
diff --git a/test/elfdump/ts/exec1/@p@e%ls.out b/test/elfdump/ts/exec1/@p@e%ls.out
new file mode 100644
index 0000000000000..9eecdf39c2247
--- /dev/null
+++ b/test/elfdump/ts/exec1/@p@e%ls.out
@@ -0,0 +1,89 @@
+
+elf header:
+
+ e_ident: ELFCLASS64 ELFDATA2LSB ELFOSABI_FREEBSD
+ e_type: ET_EXEC
+ e_machine: EM_X86_64
+ e_version: EV_CURRENT
+ e_entry: 0x401cc0
+ e_phoff: 64
+ e_shoff: 28336
+ e_flags: 0
+ e_ehsize: 64
+ e_phentsize: 56
+ e_phnum: 7
+ e_shentsize: 64
+ e_shnum: 26
+ e_shstrndx: 25
+
+program header:
+
+entry: 0
+ p_type: PT_PHDR
+ p_offset: 64
+ p_vaddr: 0x400040
+ p_paddr: 0x400040
+ p_filesz: 392
+ p_memsz: 392
+ p_flags: PF_X|PF_R
+ p_align: 8
+
+entry: 1
+ p_type: PT_INTERP
+ p_offset: 456
+ p_vaddr: 0x4001c8
+ p_paddr: 0x4001c8
+ p_filesz: 21
+ p_memsz: 21
+ p_flags: PF_R
+ p_align: 1
+
+entry: 2
+ p_type: PT_LOAD
+ p_offset: 0
+ p_vaddr: 0x400000
+ p_paddr: 0x400000
+ p_filesz: 24900
+ p_memsz: 24900
+ p_flags: PF_X|PF_R
+ p_align: 1048576
+
+entry: 3
+ p_type: PT_LOAD
+ p_offset: 24912
+ p_vaddr: 0x506150
+ p_paddr: 0x506150
+ p_filesz: 2520
+ p_memsz: 3080
+ p_flags: PF_W|PF_R
+ p_align: 1048576
+
+entry: 4
+ p_type: PT_DYNAMIC
+ p_offset: 26376
+ p_vaddr: 0x506708
+ p_paddr: 0x506708
+ p_filesz: 432
+ p_memsz: 432
+ p_flags: PF_W|PF_R
+ p_align: 8
+
+entry: 5
+ p_type: PT_NOTE
+ p_offset: 480
+ p_vaddr: 0x4001e0
+ p_paddr: 0x4001e0
+ p_filesz: 24
+ p_memsz: 24
+ p_flags: PF_R
+ p_align: 4
+
+entry: 6
+ p_type: PT_NULL
+ p_offset: 24892
+ p_vaddr: 0x40613c
+ p_paddr: 0x40613c
+ p_filesz: 8
+ p_memsz: 8
+ p_flags: PF_R
+ p_align: 4
diff --git a/test/elfdump/ts/exec1/@p@n%ls.err b/test/elfdump/ts/exec1/@p@n%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@p@n%ls.err
diff --git a/test/elfdump/ts/exec1/@p@n%ls.out b/test/elfdump/ts/exec1/@p@n%ls.out
new file mode 100644
index 0000000000000..329ac78b50bc0
--- /dev/null
+++ b/test/elfdump/ts/exec1/@p@n%ls.out
@@ -0,0 +1,75 @@
+
+program header:
+
+entry: 0
+ p_type: PT_PHDR
+ p_offset: 64
+ p_vaddr: 0x400040
+ p_paddr: 0x400040
+ p_filesz: 392
+ p_memsz: 392
+ p_flags: PF_X|PF_R
+ p_align: 8
+
+entry: 1
+ p_type: PT_INTERP
+ p_offset: 456
+ p_vaddr: 0x4001c8
+ p_paddr: 0x4001c8
+ p_filesz: 21
+ p_memsz: 21
+ p_flags: PF_R
+ p_align: 1
+
+entry: 2
+ p_type: PT_LOAD
+ p_offset: 0
+ p_vaddr: 0x400000
+ p_paddr: 0x400000
+ p_filesz: 24900
+ p_memsz: 24900
+ p_flags: PF_X|PF_R
+ p_align: 1048576
+
+entry: 3
+ p_type: PT_LOAD
+ p_offset: 24912
+ p_vaddr: 0x506150
+ p_paddr: 0x506150
+ p_filesz: 2520
+ p_memsz: 3080
+ p_flags: PF_W|PF_R
+ p_align: 1048576
+
+entry: 4
+ p_type: PT_DYNAMIC
+ p_offset: 26376
+ p_vaddr: 0x506708
+ p_paddr: 0x506708
+ p_filesz: 432
+ p_memsz: 432
+ p_flags: PF_W|PF_R
+ p_align: 8
+
+entry: 5
+ p_type: PT_NOTE
+ p_offset: 480
+ p_vaddr: 0x4001e0
+ p_paddr: 0x4001e0
+ p_filesz: 24
+ p_memsz: 24
+ p_flags: PF_R
+ p_align: 4
+
+entry: 6
+ p_type: PT_NULL
+ p_offset: 24892
+ p_vaddr: 0x40613c
+ p_paddr: 0x40613c
+ p_filesz: 8
+ p_memsz: 8
+ p_flags: PF_R
+ p_align: 4
+
+note (.note.ABI-tag):
+ FreeBSD 800074
diff --git a/test/elfdump/ts/exec1/@p@s%ls.err b/test/elfdump/ts/exec1/@p@s%ls.err
new file mode 100644
index 0000000000000..e69de29bb2d1d
--- /dev/null
+++ b/test/elfdump/ts/exec1/@p@s%ls.err
diff --git a/test/elfdump/ts/exec1/@p@s%ls.out b/test/elfdump/ts/exec1/@p@s%ls.out
new file mode 100644
index 0000000000000..ac706013bbde0
--- /dev/null
+++ b/test/elfdump/ts/exec1/@p@s%ls.out
@@ -0,0 +1,697 @@
+
+program header:
+
+entry: 0
+ p_type: PT_PHDR
+ p_offset: 64
+ p_vaddr: 0x400040
+ p_paddr: 0x400040
+ p_filesz: 392
+ p_memsz: 392
+ p_flags: PF_X|PF_R
+ p_align: 8
+
+entry: 1
+ p_type: PT_INTERP
+ p_offset: 456
+ p_vaddr: 0x4001c8
+ p_paddr: 0x4001c8
+ p_filesz: 21
+ p_memsz: 21
+ p_flags: PF_R
+ p_align: 1
+
+entry: 2
+ p_type: PT_LOAD
+ p_offset: 0
+ p_vaddr: 0x400000
+ p_paddr: 0x400000
+ p_filesz: 24900
+ p_memsz: 24900
+ p_flags: PF_X|PF_R
+ p_align: 1048576
+
+entry: 3
+ p_type: PT_LOAD
+ p_offset: 24912
+ p_vaddr: 0x506150
+ p_paddr: 0x506150
+ p_filesz: 2520
+ p_memsz: 3080
+ p_flags: PF_W|PF_R
+ p_align: 1048576
+
+entry: 4
+ p_type: PT_DYNAMIC
+ p_offset: 26376
+ p_vaddr: 0x506708
+ p_paddr: 0x506708
+ p_filesz: 432
+ p_memsz: 432
+ p_flags: PF_W|PF_R
+ p_align: 8
+
+entry: 5
+ p_type: PT_NOTE
+ p_offset: 480
+ p_vaddr: 0x4001e0
+ p_paddr: 0x4001e0
+ p_filesz: 24
+ p_memsz: 24
+ p_flags: PF_R
+ p_align: 4
+
+entry: 6
+ p_type: PT_NULL
+ p_offset: 24892
+ p_vaddr: 0x40613c
+ p_paddr: 0x40613c
+ p_filesz: 8
+ p_memsz: 8
+ p_flags: PF_R
+ p_align: 4
+
+symbol table (.dynsym):
+
+entry: 0
+ st_name:
+ st_value: 0
+ st_size: 0
+ st_info: STT_NOTYPE STB_LOCAL
+ st_shndx: 0
+
+entry: 1
+ st_name: fflagstostr
+ st_value: 0x40185c
+ st_size: 138
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 2
+ st_name: puts
+ st_value: 0x40186c
+ st_size: 210
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 3
+ st_name: fprintf
+ st_value: 0x40187c
+ st_size: 144
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 4
+ st_name: atoi
+ st_value: 0x40188c
+ st_size: 21
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 5
+ st_name: time
+ st_value: 0x40189c
+ st_size: 50
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 6
+ st_name: mbrtowc
+ st_value: 0x4018ac
+ st_size: 27
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 7
+ st_name: write
+ st_value: 0x4018bc
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 8
+ st_name: fputc
+ st_value: 0x4018cc
+ st_size: 158
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 9
+ st_name: getenv
+ st_value: 0x4018dc
+ st_size: 389
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 10
+ st_name: _DYNAMIC
+ st_value: 0x506708
+ st_size: 0
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 65521
+
+entry: 11
+ st_name: kill
+ st_value: 0x4018ec
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 12
+ st_name: humanize_number
+ st_value: 0x4018fc
+ st_size: 959
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 13
+ st_name: tgoto
+ st_value: 0x40190c
+ st_size: 993
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 14
+ st_name: putc
+ st_value: 0x40191c
+ st_size: 158
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 15
+ st_name: strdup
+ st_value: 0x40192c
+ st_size: 85
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 16
+ st_name: mac_get_link
+ st_value: 0x40193c
+ st_size: 5
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 17
+ st_name: fputs
+ st_value: 0x40194c
+ st_size: 154
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 18
+ st_name: ___runetype
+ st_value: 0x40195c
+ st_size: 117
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 19
+ st_name: mac_prepare_file_label
+ st_value: 0x40196c
+ st_size: 12
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 20
+ st_name: mac_to_text
+ st_value: 0x40197c
+ st_size: 27
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 21
+ st_name: __stack_chk_guard
+ st_value: 0x506b40
+ st_size: 64
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 22
+ st_name: ioctl
+ st_value: 0x40198c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 23
+ st_name: group_from_gid
+ st_value: 0x40199c
+ st_size: 271
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 24
+ st_name: strftime
+ st_value: 0x4019ac
+ st_size: 391
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 25
+ st_name: strerror
+ st_value: 0x4019bc
+ st_size: 48
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 26
+ st_name: _init_tls
+ st_value: 0x4019cc
+ st_size: 2
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 27
+ st_name: realloc
+ st_value: 0x4019dc
+ st_size: 1276
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 28
+ st_name: _init
+ st_value: 0x401838
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 10
+
+entry: 29
+ st_name: localtime
+ st_value: 0x4019ec
+ st_size: 321
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 30
+ st_name: environ
+ st_value: 0x506cc8
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 31
+ st_name: mac_free
+ st_value: 0x4019fc
+ st_size: 30
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 32
+ st_name: acl_get_entry
+ st_value: 0x401a0c
+ st_size: 95
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 33
+ st_name: fts_set
+ st_value: 0x401a1c
+ st_size: 40
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 34
+ st_name: strchr
+ st_value: 0x401a2c
+ st_size: 41
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 35
+ st_name: strcoll
+ st_value: 0x401a3c
+ st_size: 488
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 36
+ st_name: __isthreaded
+ st_value: 0x506b80
+ st_size: 4
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 37
+ st_name: getopt
+ st_value: 0x401a4c
+ st_size: 685
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 38
+ st_name: __progname
+ st_value: 0x506150
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 16
+
+entry: 39
+ st_name: strmode
+ st_value: 0x401a5c
+ st_size: 760
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 40
+ st_name: warnx
+ st_value: 0x401a6c
+ st_size: 149
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 41
+ st_name: tputs
+ st_value: 0x401a7c
+ st_size: 982
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 42
+ st_name: optarg
+ st_value: 0x506b88
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 43
+ st_name: sscanf
+ st_value: 0x401a8c
+ st_size: 323
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 44
+ st_name: memset
+ st_value: 0x401a9c
+ st_size: 84
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 45
+ st_name: __error
+ st_value: 0x401aac
+ st_size: 8
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 46
+ st_name: pathconf
+ st_value: 0x401abc
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 47
+ st_name: fts_children
+ st_value: 0x401acc
+ st_size: 299
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 48
+ st_name: printf
+ st_value: 0x401adc
+ st_size: 162
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 49
+ st_name: user_from_uid
+ st_value: 0x401aec
+ st_size: 271
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 50
+ st_name: __bss_start
+ st_value: 0x506b28
+ st_size: 0
+ st_info: STT_NOTYPE STB_GLOBAL
+ st_shndx: 65521
+
+entry: 51
+ st_name: snprintf
+ st_value: 0x401afc
+ st_size: 501
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 52
+ st_name: warn
+ st_value: 0x401b0c
+ st_size: 168
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 53
+ st_name: __mb_sb_limit
+ st_value: 0x506b90
+ st_size: 4
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 54
+ st_name: tgetent
+ st_value: 0x401b1c
+ st_size: 1598
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 55
+ st_name: signal
+ st_value: 0x401b2c
+ st_size: 95
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 56
+ st_name: fts_read
+ st_value: 0x401b3c
+ st_size: 1240
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 57
+ st_name: _fini
+ st_value: 0x405b48
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 13
+
+entry: 58
+ st_name: nl_langinfo
+ st_value: 0x401b4c
+ st_size: 677
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 59
+ st_name: setenv
+ st_value: 0x401b5c
+ st_size: 147
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 60
+ st_name: __stdoutp
+ st_value: 0x506b98
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 61
+ st_name: fwrite
+ st_value: 0x401b6c
+ st_size: 202
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 62
+ st_name: _CurrentRuneLocale
+ st_value: 0x506ba0
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 63
+ st_name: fts_open
+ st_value: 0x401b7c
+ st_size: 645
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 64
+ st_name: getbsize
+ st_value: 0x401b8c
+ st_size: 545
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 65
+ st_name: __swbuf
+ st_value: 0x401b9c
+ st_size: 230
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 66
+ st_name: exit
+ st_value: 0x401bac
+ st_size: 47
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 67
+ st_name: malloc
+ st_value: 0x401bbc
+ st_size: 175
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 68
+ st_name: mac_get_file
+ st_value: 0x401bcc
+ st_size: 5
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 69
+ st_name: err
+ st_value: 0x401bdc
+ st_size: 170
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 70
+ st_name: _edata
+ st_value: 0x506b28
+ st_size: 0
+ st_info: STT_NOTYPE STB_GLOBAL
+ st_shndx: 65521
+
+entry: 71
+ st_name: isatty
+ st_value: 0x401bec
+ st_size: 60
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 72
+ st_name: _GLOBAL_OFFSET_TABLE_
+ st_value: 0x5068e0
+ st_size: 0
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 65521
+
+entry: 73
+ st_name: _end
+ st_value: 0x506d58
+ st_size: 0
+ st_info: STT_NOTYPE STB_GLOBAL
+ st_shndx: 65521
+
+entry: 74
+ st_name: setlocale
+ st_value: 0x401bfc
+ st_size: 904
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 75
+ st_name: __stderrp
+ st_value: 0x506ba8
+ st_size: 8
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 76
+ st_name: free
+ st_value: 0x401c0c
+ st_size: 118
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 77
+ st_name: optind
+ st_value: 0x506bb0
+ st_size: 4
+ st_info: STT_OBJECT STB_GLOBAL
+ st_shndx: 23
+
+entry: 78
+ st_name: getuid
+ st_value: 0x401c1c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 79
+ st_name: __stack_chk_fail
+ st_value: 0x401c2c
+ st_size: 12
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 80
+ st_name: atexit
+ st_value: 0x401c3c
+ st_size: 47
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 81
+ st_name: acl_free
+ st_value: 0x401c4c
+ st_size: 21
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 82
+ st_name: getpid
+ st_value: 0x401c5c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 83
+ st_name: strlen
+ st_value: 0x401c6c
+ st_size: 199
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 84
+ st_name: strcpy
+ st_value: 0x401c7c
+ st_size: 174
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 85
+ st_name: _Jv_RegisterClasses
+ st_value: 0
+ st_size: 0
+ st_info: STT_NOTYPE STB_WEAK
+ st_shndx: 0
+
+entry: 86
+ st_name: readlink
+ st_value: 0x401c8c
+ st_size: 0
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 87
+ st_name: tgetstr
+ st_value: 0x401c9c
+ st_size: 355
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
+
+entry: 88
+ st_name: acl_get_file
+ st_value: 0x401cac
+ st_size: 93
+ st_info: STT_FUNC STB_GLOBAL
+ st_shndx: 0
diff --git a/test/elfdump/ts/exec1/ls b/test/elfdump/ts/exec1/ls
new file mode 100644
index 0000000000000..4b7329db8ec97
--- /dev/null
+++ b/test/elfdump/ts/exec1/ls
Binary files differ
diff --git a/test/elfdump/ts/exec1/tc b/test/elfdump/ts/exec1/tc
new file mode 100755
index 0000000000000..bd201e65a7f26
--- /dev/null
+++ b/test/elfdump/ts/exec1/tc
@@ -0,0 +1,174 @@
+#!/bin/sh
+#
+# $Id: tc 2083 2011-10-27 04:41:39Z jkoshy $
+
+tp1()
+{
+ run "@e%ls"
+}
+
+tp2()
+{
+ run "@e@p%ls"
+}
+
+tp3()
+{
+ run "@p@e%ls"
+}
+
+tp4()
+{
+ run "@G%ls"
+}
+
+tp5()
+{
+ run "@G@e%ls"
+}
+
+tp6()
+{
+ run "@n%ls"
+}
+
+tp7()
+{
+ run "@p@n%ls"
+}
+
+tp8()
+{
+ run "@p@s%ls"
+}
+
+tp9()
+{
+ run "@c%ls"
+}
+
+tp10()
+{
+ run "@c@s%ls"
+}
+
+tp11()
+{
+ run "@c@p@n%ls"
+}
+
+tp12()
+{
+ run "@e@d%ls"
+}
+
+tp13()
+{
+ run "@c@d%ls"
+}
+
+tp14()
+{
+ run "@e@p@c@d%ls"
+}
+
+tp15()
+{
+ run "@S@e%ls"
+}
+
+tp16()
+{
+ run "@S@e@p%ls"
+}
+
+tp17()
+{
+ run "@S@G%ls"
+}
+
+tp18()
+{
+ run "@S@s@N%.dynsym%ls"
+}
+
+tp19()
+{
+ run "@S@r%ls"
+}
+
+tp20()
+{
+ run "@S@d%ls"
+}
+
+tp21()
+{
+ run "@S@n%ls"
+}
+
+tp22()
+{
+ run "@S@c@s%ls"
+}
+
+tp23()
+{
+ run "@S@e@k%ls"
+}
+
+tp24()
+{
+ run "@S@v%ls"
+}
+
+tp25()
+{
+ run "@S@h%ls"
+}
+
+tp26()
+{
+ run "@S@r@N%.rela.dyn%ls"
+}
+
+tp27()
+{
+ run "@S@r@N%.rela.dyn@N%.rela.plt%ls"
+}
+
+tet_startup=""
+tet_cleanup="cleanup"
+
+iclist="ic1 ic2 ic3 ic4 ic5 ic6 ic7 ic8 ic9 ic10 ic11 ic12 ic13 ic14 ic15 ic16 ic17 ic18 ic19 ic20 ic21 ic22 ic23 ic24 ic25 ic26 ic27"
+
+ic1="tp1"
+ic2="tp2"
+ic3="tp3"
+ic4="tp4"
+ic5="tp5"
+ic6="tp6"
+ic7="tp7"
+ic8="tp8"
+ic9="tp9"
+ic10="tp10"
+ic11="tp11"
+ic12="tp12"
+ic13="tp13"
+ic14="tp14"
+ic15="tp15"
+ic16="tp16"
+ic17="tp17"
+ic18="tp18"
+ic19="tp19"
+ic20="tp20"
+ic21="tp21"
+ic22="tp22"
+ic23="tp23"
+ic24="tp24"
+ic25="tp25"
+ic26="tp26"
+ic27="tp27"
+
+. $TET_SUITE_ROOT/ts/common/func.sh
+. $TET_ROOT/lib/xpg3sh/tcm.sh