Use segment's off and vaddr fields instead of IsSharedObject heuristic
This patch unifies the handling of ET_EXEC and ET_DYN ELF files by
clarifying the difference between "offset" of function's code in ELF
file, its "virtual address" that is recorded in the file (according to
ELF specification, it is the "symbol value" written to st_value field in
a symbol table entry in case of executable and shared object ELF files)
and the actual address of function in the address space of a process
after dynamic relocations took place.
Please note that file offset and virtual address are usually the same in
ET_DYN files (such as shared objects and position-independent
executables) but it is not required and this assumption is sometimes
violated in real-life scenarios.
Reviewed By: tnfchris
Differential Revision: https://reviews.llvm.org/D144852
~~
Huawei RRI, OS Lab
diff --git a/lnt/testing/profile/cPerf.cpp b/lnt/testing/profile/cPerf.cpp
index 25dc482..9979a9f 100644
--- a/lnt/testing/profile/cPerf.cpp
+++ b/lnt/testing/profile/cPerf.cpp
@@ -178,30 +178,6 @@
throw std::logic_error(Str);
}
-// Returns true if the ELF file given by filename
-// is a shared object (DYN).
-bool IsSharedObject(const std::string &Fname) {
- // We replicate the first part of an ELF header here
- // so as not to rely on <elf.h>.
- struct PartialElfHeader {
- unsigned char e_ident[16];
- uint16_t e_type;
- };
- const int ET_DYN = 3;
-
- FILE *stream = fopen(Fname.c_str(), "r");
- if (stream == NULL)
- return false;
-
- PartialElfHeader H;
- auto NumRead = fread(&H, 1, sizeof(H), stream);
- assert(NumRead == sizeof(H));
-
- fclose(stream);
-
- return H.e_type == ET_DYN;
-}
-
//===----------------------------------------------------------------------===//
// Perf structures. Taken from https://lwn.net/Articles/644919/
//===----------------------------------------------------------------------===//
@@ -360,9 +336,20 @@
//===----------------------------------------------------------------------===//
struct Map {
- uint64_t Start, End, Adjust;
- bool isSO;
+ Map(uint64_t Start, uint64_t End, const char *Filename)
+ : Start(Start), End(End), Filename(Filename) {}
+
+ uint64_t Start, End;
const char *Filename;
+
+ // Mapping-related adjustments. Here FileOffset(func) is the offset of func
+ // in the ELF file, VAddr(func) is the virtual address associated with this
+ // symbol (in case of executable and shared object ELF files, st_value field
+ // of a symbol table's entry is symbol's virtual address) and &func is the
+ // actual memory address after relocations took place in the address space of
+ // the process being profiled.
+ uint64_t FileToPCOffset; // FileOffset(func) + FileToPCOffset == &func
+ uint64_t VAddrToFileOffset; // VAddr(func) + VAddrToFileOffset == FileOffset(func)
};
struct EventDesc {
@@ -389,7 +376,7 @@
SymTabOutput(std::string Objdump, std::string BinaryCacheRoot)
: Objdump(Objdump), BinaryCacheRoot(BinaryCacheRoot) {}
- uint64_t fetchExecSegment(Map *M) {
+ void fetchExecSegment(Map *M, uint64_t *FileOffset, uint64_t *VAddr) {
std::string Cmd = Objdump + " -p -C " +
BinaryCacheRoot + std::string(M->Filename) +
#ifdef _WIN32
@@ -401,7 +388,7 @@
char *Line = nullptr, *PrevLine = nullptr;
size_t LineLen = 0;
- uint64_t offset = 0;
+ *FileOffset = *VAddr = 0;
while (true) {
if (PrevLine)
free (PrevLine);
@@ -411,17 +398,22 @@
if (Len == -1)
break;
- char* pos;
- if ((pos = strstr (Line, "flags r-x")) == NULL
- && (pos = strstr (Line, "flags rwx")) == NULL)
+ if (!strstr(Line, "flags r-x") && !strstr(Line, "flags rwx"))
continue;
/* Format is weird.. but we did find the section so punt. */
- if ((pos = strstr (PrevLine, "vaddr ")) == NULL)
+ const char *OFFSET_LABEL = "off ";
+ const char *VADDR_LABEL = "vaddr ";
+ char *pos_offset = strstr(PrevLine, OFFSET_LABEL);
+ char *pos_vaddr = strstr(PrevLine, VADDR_LABEL);
+ if (!pos_offset || !pos_vaddr)
break;
- pos += 6;
- offset = strtoull (pos, NULL, 16);
+ pos_offset += strlen(OFFSET_LABEL);
+ pos_vaddr += strlen(VADDR_LABEL);
+ *FileOffset = strtoull(pos_offset, NULL, 16);
+ *VAddr = strtoull(pos_vaddr, NULL, 16);
+
break;
}
if (Line)
@@ -435,7 +427,6 @@
fclose(Stream);
wait(NULL);
#endif
- return offset;
}
void fetchSymbols(Map *M) {
@@ -528,15 +519,14 @@
void reset(Map *M) {
clear();
+
+ // Take possible difference between "offset" and "virtual address" of
+ // the executable segment into account.
+ uint64_t FileOffset, VAddr;
+ fetchExecSegment(M, &FileOffset, &VAddr);
+ M->VAddrToFileOffset = FileOffset - VAddr;
+
// Fetch both dynamic and static symbols, sort and unique them.
- /* If we're a relocatable object then take the actual start of the text
- segment into account. */
- if (M->isSO) {
- uint64_t segmentStart = fetchExecSegment (M);
- /* Adjust the symbol to a value relative to the start of the load address
- to match up with registerNewMapping. */
- M->Adjust -= segmentStart;
- }
fetchSymbols(M);
std::sort(begin(), end());
@@ -670,8 +660,7 @@
void emitSymbol(
Symbol &Sym, Map &M,
std::map<uint64_t, std::map<const char *, uint64_t>>::iterator Event,
- std::map<const char *, uint64_t> &SymEvents,
- uint64_t Adjust);
+ std::map<const char *, uint64_t> &SymEvents);
PyObject *complete();
private:
@@ -851,13 +840,11 @@
void PerfReader::registerNewMapping(unsigned char *Buf, const char *Filename) {
perf_event_mmap_common *E = (perf_event_mmap_common *)Buf;
auto MapID = Maps.size();
- // EXEC ELF objects aren't relocated. DYN ones are,
- // so if it's a DYN object adjust by subtracting the
- // map base.
- bool IsSO = IsSharedObject(BinaryCacheRoot + std::string(Filename));
+
uint64_t End = E->start + E->extent;
- uint64_t Adjust = IsSO ? E->start - E->pgoff : 0;
- Maps.push_back({E->start, End, Adjust, IsSO, Filename});
+ Map NewMapping(E->start, End, Filename);
+ NewMapping.FileToPCOffset = E->start - E->pgoff;
+ Maps.push_back(NewMapping);
unsigned char *EndOfEvent = Buf + E->header.size;
// FIXME: The first EventID is used for every event.
@@ -1025,10 +1012,11 @@
if (AllUnderThreshold)
continue;
+ Map &M = Maps[MapID];
SymTabOutput Syms(Objdump, BinaryCacheRoot);
- Syms.reset(&Maps[MapID]);
+ Syms.reset(&M);
- uint64_t Adjust = Maps[MapID].Adjust;
+ uint64_t VAddrToPCOffset = M.VAddrToFileOffset + M.FileToPCOffset;
// Accumulate the event totals for each symbol
auto Sym = Syms.begin();
@@ -1036,13 +1024,13 @@
std::map<uint64_t, std::map<const char*, uint64_t>> SymToEventTotals;
while (Event != MapEvents.end() && Sym != Syms.end()) {
// Skip events until we find one after the start of Sym
- auto PC = Event->first - Adjust;
- if (PC < Sym->Start) {
+ auto VAddr = Event->first - VAddrToPCOffset;
+ if (VAddr < Sym->Start) {
++Event;
continue;
}
// Skip symbols until the event is before the end of Sym
- if (PC >= Sym->End) {
+ if (VAddr >= Sym->End) {
++Sym;
continue;
}
@@ -1062,8 +1050,8 @@
}
}
if (Keep)
- emitSymbol(Sym, Maps[MapID], MapEvents.lower_bound(Sym.Start),
- SymToEventTotals[Sym.Start], Adjust);
+ emitSymbol(Sym, M, MapEvents.lower_bound(Sym.Start + VAddrToPCOffset),
+ SymToEventTotals[Sym.Start]);
}
}
}
@@ -1071,17 +1059,19 @@
void PerfReader::emitSymbol(
Symbol &Sym, Map &M,
std::map<uint64_t, std::map<const char *, uint64_t>>::iterator Event,
- std::map<const char *, uint64_t> &SymEvents,
- uint64_t Adjust) {
+ std::map<const char *, uint64_t> &SymEvents) {
+ uint64_t VAddrToPCOffset = M.VAddrToFileOffset + M.FileToPCOffset;
ObjdumpOutput Dump(Objdump, BinaryCacheRoot);
Dump.reset(&M, Sym.Start, Sym.End);
emitFunctionStart(Sym.Name);
+ assert(Sym.Start <= Event->first - VAddrToPCOffset &&
+ Event->first - VAddrToPCOffset < Sym.End);
for (uint64_t I = Dump.next(); I < Sym.End; I = Dump.next()) {
- auto PC = Event->first - Adjust;
+ auto VAddr = Event->first - VAddrToPCOffset;
auto Text = Dump.getText();
- if (PC == I) {
+ if (VAddr == I) {
emitLine(I, &Event->second, Text);
++Event;
} else {
diff --git a/tests/testing/Inputs/Sources/segments.c b/tests/testing/Inputs/Sources/segments.c
new file mode 100644
index 0000000..c2f8875
--- /dev/null
+++ b/tests/testing/Inputs/Sources/segments.c
@@ -0,0 +1,17 @@
+#include <stdlib.h>
+
+volatile unsigned n = 0;
+
+__attribute__((noinline))
+__attribute__((section(".text.correct")))
+__attribute__((aligned(0x1000)))
+void correct(long count) {
+ for (long i = 0; i < count; ++i) {
+ n += 1;
+ }
+}
+
+int main(int argc, const char *argv[]) {
+ correct(atol(argv[1]));
+ return 0;
+}
diff --git a/tests/testing/Inputs/Sources/segments.lds b/tests/testing/Inputs/Sources/segments.lds
new file mode 100644
index 0000000..1db6909
--- /dev/null
+++ b/tests/testing/Inputs/Sources/segments.lds
@@ -0,0 +1,9 @@
+SECTIONS {
+ .text (. + 0x1000) : {
+ *(.text)
+ *(.text.correct)
+ }
+} INSERT BEFORE .init;
+/* .init is the first section placed to the executable segment in a binary
+ * produced by clang at the time of writing
+ */
diff --git a/tests/testing/Inputs/Sources/segments.sh b/tests/testing/Inputs/Sources/segments.sh
new file mode 100755
index 0000000..602782c
--- /dev/null
+++ b/tests/testing/Inputs/Sources/segments.sh
@@ -0,0 +1,86 @@
+#!/bin/bash
+
+# While it is quite common for ET_DYN ELF files to have virtual addresses equal
+# to file offsets, these are different entities. For example, the code segment
+# is sometimes shifted by one page or so.
+#
+# This script prepares an executable file with code contained in a section
+# that has VirtAddr == FileOffset + 0x1000.
+#
+# In addition, this script also creates two regular executables:
+# a position-independent executable and a static one to check the handling of
+# the more traditional layout of ELF segments for ET_DYN and ET_EXEC binaries.
+#
+# A few simple checks are performed to make sure the heuristics used to create
+# the required segment layouts still work.
+
+cd "$(dirname $0)"
+
+save_objdump_output() {
+ local path_to_elf="$1"
+ local addr_correct="$2"
+
+ local basename="$(basename "$path_to_elf")"
+
+ llvm-objdump "$path_to_elf" -t > "../${basename}.objdump.out"
+ llvm-objdump "$path_to_elf" -p > "../${basename}.objdump.p.out"
+ llvm-objdump "$path_to_elf" -j .text --disassemble-symbols=correct > "../${basename}.objdump.${addr_correct}.out"
+}
+
+record_perf_data() {
+ local path_to_elf="$1"
+ local basename="$(basename "$path_to_elf")"
+ local path_to_perf_data="../${basename}.perf_data"
+ local num_of_iterations=100000000
+
+ rm -f "$path_to_perf_data"
+ perf record -e cpu-clock -o "$path_to_perf_data" "$path_to_elf" $num_of_iterations
+
+ # It is probably not a good idea to put very large *.perf_data files to git
+ size_in_bytes=$(stat --format='%s' "$path_to_perf_data")
+ if [ $size_in_bytes -gt 50000 ]; then
+ echo "perf produced too large output file ${path_to_perf_data}, try decreasing"
+ echo "the number of iterations or passing -F option to 'perf record'."
+ exit 1
+ fi
+}
+
+save_test_case() {
+ local path_to_elf="$1"
+ local addr_correct="$2"
+
+ record_perf_data "$path_to_elf"
+ save_objdump_output "$path_to_elf" $addr_correct
+}
+
+check_file() {
+ local file="$1"
+ local line="$2"
+
+ # Use pcregrep to simplify handling of newlines (it is possible to embed \n
+ # into the regex and not have them being matched by a dot)
+ if ! pcregrep -M "$line" "$file"; then
+ echo "Unexpected test case generated: file '$file' should contain '$line'"
+ exit 1
+ fi
+}
+
+clang -Os -o /tmp/segments-shifted segments.c -pie -Wl,-T,segments.lds
+clang -Os -o /tmp/segments-dyn segments.c -pie
+clang -Os -o /tmp/segments-exec segments.c -static
+
+save_test_case /tmp/segments-shifted 0x2000
+check_file ../segments-shifted.objdump.out "00002000 .* correct"
+# The expected objdump -p output is something like this (note off != vaddr):
+# LOAD off 0x0000000000000618 vaddr 0x0000000000001618 paddr 0x0000000000001618 align 2**12
+# filesz 0x0000000000002a3d memsz 0x0000000000002a3d flags r-x
+check_file ../segments-shifted.objdump.p.out "LOAD off 0x(0+)0000(...) vaddr 0x\g{1}0001\g{2} paddr.*\n.*flags r-x"
+
+# Feel free to update the value of "correct" symbol in the static case if it is changed
+save_test_case /tmp/segments-exec 0x403000
+check_file ../segments-exec.objdump.out "00403000 .* correct"
+check_file ../segments-exec.objdump.p.out "LOAD off 0x(0+)0001000 vaddr 0x(0+)0401000 paddr.*\n.*flags r-x"
+
+save_test_case /tmp/segments-dyn 0x3000
+check_file ../segments-dyn.objdump.out "00003000 .* correct"
+check_file ../segments-dyn.objdump.p.out "LOAD off 0x(0+)0001000 vaddr 0x(0+)0001000 paddr.*\n.*flags r-x"
diff --git a/tests/testing/Inputs/fake-objdump.py b/tests/testing/Inputs/fake-objdump.py
index f056872..58967d3 100644
--- a/tests/testing/Inputs/fake-objdump.py
+++ b/tests/testing/Inputs/fake-objdump.py
@@ -16,4 +16,7 @@
if arg.startswith('-t'):
exit_with_fake_output('out')
+ if arg.startswith('-p'):
+ exit_with_fake_output('p.out')
+
sys.exit(1)
diff --git a/tests/testing/Inputs/fib-aarch64.objdump.p.out b/tests/testing/Inputs/fib-aarch64.objdump.p.out
new file mode 100644
index 0000000..a139f2d
--- /dev/null
+++ b/tests/testing/Inputs/fib-aarch64.objdump.p.out
@@ -0,0 +1,16 @@
+Fake "objdump -p" output.
+
+The original test case was added when ET_EXEC and ET_DYN ELF binaries were
+handled differently (assuming ET_EXEC by default - if IsSharedObject() function
+cannot find the file).
+
+This test input was added to fix the existing tests after the removal of the
+heuristic relying on virtual addresses being equal to file offsets for ET_DYN
+case and to final addresses in the process' address space for ET_EXEC case,
+respectively.
+
+The "off" and "vaddr" fields are set to some reasonable values based on the
+mmap2 records from *.perf_data file.
+
+LOAD off 0x00000000 vaddr 0x00400000 paddr ...
+ ... ... ... ... flags r-x
diff --git a/tests/testing/Inputs/fib2-aarch64.objdump.p.out b/tests/testing/Inputs/fib2-aarch64.objdump.p.out
new file mode 100644
index 0000000..a139f2d
--- /dev/null
+++ b/tests/testing/Inputs/fib2-aarch64.objdump.p.out
@@ -0,0 +1,16 @@
+Fake "objdump -p" output.
+
+The original test case was added when ET_EXEC and ET_DYN ELF binaries were
+handled differently (assuming ET_EXEC by default - if IsSharedObject() function
+cannot find the file).
+
+This test input was added to fix the existing tests after the removal of the
+heuristic relying on virtual addresses being equal to file offsets for ET_DYN
+case and to final addresses in the process' address space for ET_EXEC case,
+respectively.
+
+The "off" and "vaddr" fields are set to some reasonable values based on the
+mmap2 records from *.perf_data file.
+
+LOAD off 0x00000000 vaddr 0x00400000 paddr ...
+ ... ... ... ... flags r-x
diff --git a/tests/testing/Inputs/segments-dyn.objdump.0x3000.out b/tests/testing/Inputs/segments-dyn.objdump.0x3000.out
new file mode 100644
index 0000000..33ee76c
--- /dev/null
+++ b/tests/testing/Inputs/segments-dyn.objdump.0x3000.out
@@ -0,0 +1,12 @@
+
+/tmp/segments-dyn: file format elf64-x86-64
+
+Disassembly of section .text:
+
+0000000000003000 <correct>:
+ 3000: 48 85 ff testq %rdi, %rdi
+ 3003: 7e 0b jle 0x3010 <correct+0x10>
+ 3005: ff 05 11 30 00 00 incl 12305(%rip) # 0x601c <n>
+ 300b: 48 ff cf decq %rdi
+ 300e: 75 f5 jne 0x3005 <correct+0x5>
+ 3010: c3 retq
diff --git a/tests/testing/Inputs/segments-dyn.objdump.out b/tests/testing/Inputs/segments-dyn.objdump.out
new file mode 100644
index 0000000..bffb51d
--- /dev/null
+++ b/tests/testing/Inputs/segments-dyn.objdump.out
@@ -0,0 +1,41 @@
+
+/tmp/segments-dyn: file format elf64-x86-64
+
+SYMBOL TABLE:
+0000000000000000 l df *ABS* 0000000000000000 Scrt1.o
+000000000000037c l O .note.ABI-tag 0000000000000020 __abi_tag
+0000000000000000 l df *ABS* 0000000000000000 crtstuff.c
+0000000000002030 l F .text 0000000000000000 deregister_tm_clones
+0000000000002060 l F .text 0000000000000000 register_tm_clones
+00000000000020a0 l F .text 0000000000000000 __do_global_dtors_aux
+0000000000006018 l O .bss 0000000000000001 completed.0
+0000000000005dd8 l O .fini_array 0000000000000000 __do_global_dtors_aux_fini_array_entry
+00000000000020e0 l F .text 0000000000000000 frame_dummy
+0000000000005dd0 l O .init_array 0000000000000000 __frame_dummy_init_array_entry
+0000000000000000 l df *ABS* 0000000000000000 segments.c
+0000000000000000 l df *ABS* 0000000000000000 crtstuff.c
+00000000000040d4 l O .eh_frame 0000000000000000 __FRAME_END__
+0000000000000000 l df *ABS* 0000000000000000
+0000000000005de0 l O .dynamic 0000000000000000 _DYNAMIC
+0000000000004004 l .eh_frame_hdr 0000000000000000 __GNU_EH_FRAME_HDR
+0000000000005fe8 l O .got.plt 0000000000000000 _GLOBAL_OFFSET_TABLE_
+0000000000000000 F *UND* 0000000000000000 __libc_start_main@GLIBC_2.34
+0000000000000000 w *UND* 0000000000000000 _ITM_deregisterTMCloneTable
+0000000000006008 w .data 0000000000000000 data_start
+000000000000601c g O .bss 0000000000000004 n
+0000000000006018 g .data 0000000000000000 _edata
+0000000000003014 g F .fini 0000000000000000 .hidden _fini
+0000000000006008 g .data 0000000000000000 __data_start
+0000000000000000 w *UND* 0000000000000000 __gmon_start__
+0000000000006010 g O .data 0000000000000000 .hidden __dso_handle
+0000000000004000 g O .rodata 0000000000000004 _IO_stdin_used
+0000000000006020 g .bss 0000000000000000 _end
+0000000000002000 g F .text 0000000000000026 _start
+0000000000006018 g .bss 0000000000000000 __bss_start
+00000000000020ec g F .text 0000000000000016 main
+0000000000000000 F *UND* 0000000000000000 atol@GLIBC_2.2.5
+0000000000006018 g O .data 0000000000000000 .hidden __TMC_END__
+0000000000000000 w *UND* 0000000000000000 _ITM_registerTMCloneTable
+0000000000000000 w F *UND* 0000000000000000 __cxa_finalize@GLIBC_2.2.5
+0000000000001000 g F .init 0000000000000000 .hidden _init
+0000000000003000 g F .text 0000000000000011 correct
diff --git a/tests/testing/Inputs/segments-dyn.objdump.p.out b/tests/testing/Inputs/segments-dyn.objdump.p.out
new file mode 100644
index 0000000..d2be911
--- /dev/null
+++ b/tests/testing/Inputs/segments-dyn.objdump.p.out
@@ -0,0 +1,62 @@
+
+/tmp/segments-dyn: file format elf64-x86-64
+
+Program Header:
+ PHDR off 0x0000000000000040 vaddr 0x0000000000000040 paddr 0x0000000000000040 align 2**3
+ filesz 0x00000000000002d8 memsz 0x00000000000002d8 flags r--
+ INTERP off 0x0000000000000318 vaddr 0x0000000000000318 paddr 0x0000000000000318 align 2**0
+ filesz 0x000000000000001c memsz 0x000000000000001c flags r--
+ LOAD off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**12
+ filesz 0x0000000000000618 memsz 0x0000000000000618 flags r--
+ LOAD off 0x0000000000001000 vaddr 0x0000000000001000 paddr 0x0000000000001000 align 2**12
+ filesz 0x0000000000002021 memsz 0x0000000000002021 flags r-x
+ LOAD off 0x0000000000004000 vaddr 0x0000000000004000 paddr 0x0000000000004000 align 2**12
+ filesz 0x00000000000000d8 memsz 0x00000000000000d8 flags r--
+ LOAD off 0x0000000000004dd0 vaddr 0x0000000000005dd0 paddr 0x0000000000005dd0 align 2**12
+ filesz 0x0000000000000248 memsz 0x0000000000000250 flags rw-
+ DYNAMIC off 0x0000000000004de0 vaddr 0x0000000000005de0 paddr 0x0000000000005de0 align 2**3
+ filesz 0x00000000000001e0 memsz 0x00000000000001e0 flags rw-
+ NOTE off 0x0000000000000338 vaddr 0x0000000000000338 paddr 0x0000000000000338 align 2**3
+ filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
+ NOTE off 0x0000000000000358 vaddr 0x0000000000000358 paddr 0x0000000000000358 align 2**2
+ filesz 0x0000000000000044 memsz 0x0000000000000044 flags r--
+ PROPERTY off 0x0000000000000338 vaddr 0x0000000000000338 paddr 0x0000000000000338 align 2**3
+ filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
+EH_FRAME off 0x0000000000004004 vaddr 0x0000000000004004 paddr 0x0000000000004004 align 2**2
+ filesz 0x0000000000000034 memsz 0x0000000000000034 flags r--
+ STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**4
+ filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-
+ RELRO off 0x0000000000004dd0 vaddr 0x0000000000005dd0 paddr 0x0000000000005dd0 align 2**0
+ filesz 0x0000000000000230 memsz 0x0000000000000230 flags r--
+
+Dynamic Section:
+ NEEDED libc.so.6
+ INIT 0x0000000000001000
+ FINI 0x0000000000003014
+ INIT_ARRAY 0x0000000000005dd0
+ INIT_ARRAYSZ 0x0000000000000008
+ FINI_ARRAY 0x0000000000005dd8
+ FINI_ARRAYSZ 0x0000000000000008
+ GNU_HASH 0x00000000000003a0
+ STRTAB 0x0000000000000470
+ SYMTAB 0x00000000000003c8
+ STRSZ 0x000000000000008d
+ SYMENT 0x0000000000000018
+ DEBUG 0x0000000000000000
+ PLTGOT 0x0000000000005fe8
+ PLTRELSZ 0x0000000000000018
+ PLTREL 0x0000000000000007
+ JMPREL 0x0000000000000600
+ RELA 0x0000000000000540
+ RELASZ 0x00000000000000c0
+ RELAENT 0x0000000000000018
+ FLAGS_1 0x0000000008000000
+ VERNEED 0x0000000000000510
+ VERNEEDNUM 0x0000000000000001
+ VERSYM 0x00000000000004fe
+ RELACOUNT 0x0000000000000003
+
+Version References:
+ required from libc.so.6:
+ 0x09691a75 0x00 03 GLIBC_2.2.5
+ 0x069691b4 0x00 02 GLIBC_2.34
diff --git a/tests/testing/Inputs/segments-dyn.perf_data b/tests/testing/Inputs/segments-dyn.perf_data
new file mode 100644
index 0000000..14dfe8d
--- /dev/null
+++ b/tests/testing/Inputs/segments-dyn.perf_data
Binary files differ
diff --git a/tests/testing/Inputs/segments-exec.objdump.0x403000.out b/tests/testing/Inputs/segments-exec.objdump.0x403000.out
new file mode 100644
index 0000000..7f4152d
--- /dev/null
+++ b/tests/testing/Inputs/segments-exec.objdump.0x403000.out
@@ -0,0 +1,14 @@
+
+/tmp/segments-exec: file format elf64-x86-64
+
+Disassembly of section .text:
+
+0000000000403000 <correct>:
+ 403000: 48 85 ff testq %rdi, %rdi
+ 403003: 7e 0b jle 0x403010 <correct+0x10>
+ 403005: ff 05 c5 42 0b 00 incl 737989(%rip) # 0x4b72d0 <n>
+ 40300b: 48 ff cf decq %rdi
+ 40300e: 75 f5 jne 0x403005 <correct+0x5>
+ 403010: c3 retq
+ 403011: 66 2e 0f 1f 84 00 00 00 00 00 nopw %cs:(%rax,%rax)
+ 40301b: 0f 1f 44 00 00 nopl (%rax,%rax)
diff --git a/tests/testing/Inputs/segments-exec.objdump.out b/tests/testing/Inputs/segments-exec.objdump.out
new file mode 100644
index 0000000..525fc7c
--- /dev/null
+++ b/tests/testing/Inputs/segments-exec.objdump.out
@@ -0,0 +1,2051 @@
+
+/tmp/segments-exec: file format elf64-x86-64
+
+SYMBOL TABLE:
+0000000000000000 l df *ABS* 0000000000000000 crt1.o
+00000000004002ec l O .note.ABI-tag 0000000000000020 __abi_tag
+0000000000000000 l df *ABS* 0000000000000000 assert.o
+0000000000487520 l O .rodata 0000000000000013 errstr.0
+0000000000402000 l F .text 000000000000000f __assert_fail_base.cold
+0000000000000000 l df *ABS* 0000000000000000 loadmsgcat.o
+00000000004b7c90 l O .bss 0000000000000010 lock.0
+000000000040200f l F .text 000000000000000a _nl_load_domain.cold
+0000000000000000 l df *ABS* 0000000000000000 abort.o
+00000000004b7ce0 l O .bss 0000000000000010 lock
+00000000004b7cf0 l O .bss 0000000000000004 stage
+0000000000000000 l df *ABS* 0000000000000000 iofclose.o
+00000000004021ae l F .text 0000000000000034 _IO_new_fclose.cold
+0000000000000000 l df *ABS* 0000000000000000 iofflush.o
+00000000004021e2 l F .text 0000000000000034 _IO_fflush.cold
+0000000000000000 l df *ABS* 0000000000000000 wfileops.o
+00000000004883c0 l O .rodata 0000000000000014 __PRETTY_FUNCTION__.0
+0000000000402216 l F .text 0000000000000035 _IO_wfile_underflow.cold
+000000000040f2f0 l F .text 00000000000000eb adjust_wide_data
+000000000040fcb0 l F .text 000000000000015d _IO_wfile_underflow_mmap
+000000000040fe10 l F .text 0000000000000037 _IO_wfile_underflow_maybe_mmap
+0000000000000000 l df *ABS* 0000000000000000 fileops.o
+0000000000411220 l F .text 0000000000000070 _IO_file_seekoff_maybe_mmap
+000000000040224b l F .text 0000000000000037 _IO_new_file_underflow.cold
+0000000000411660 l F .text 000000000000005a _IO_file_sync_mmap
+00000000004116c0 l F .text 000000000000020a _IO_file_xsgetn_maybe_mmap
+0000000000411f50 l F .text 0000000000000311 _IO_file_xsgetn_mmap
+00000000004886a0 l O .rodata 0000000000000013 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 iofputs.o
+000000000040228e l F .text 0000000000000034 _IO_fputs.cold
+0000000000000000 l df *ABS* 0000000000000000 iofwrite.o
+00000000004022c2 l F .text 0000000000000034 _IO_fwrite.cold
+0000000000000000 l df *ABS* 0000000000000000 iogetdelim.o
+00000000004022f6 l F .text 0000000000000034 __getdelim.cold
+0000000000000000 l df *ABS* 0000000000000000 pthread_once.o
+000000000045ae70 l F .text 000000000000012c __pthread_once_slow
+000000000045afd0 l F .text 0000000000000045 clear_once_control
+000000000045afa0 l F .text 0000000000000021 __pthread_cleanup_combined_routine_voidptr
+000000000040232a l F .text 0000000000000027 __pthread_once_slow.cold
+0000000000000000 l df *ABS* 0000000000000000 printf_fp.o
+000000000046e320 l F .text 0000000000000134 hack_digit
+000000000046e460 l F .text 00000000000002ee _i18n_number_rewrite
+0000000000402351 l F .text 0000000000000005 __printf_fp_l.cold
+0000000000000000 l df *ABS* 0000000000000000 printf_fphex.o
+000000000049d978 l O .rodata 000000000000000f __PRETTY_FUNCTION__.0
+0000000000402356 l F .text 0000000000000005 __printf_fphex.cold
+0000000000000000 l df *ABS* 0000000000000000 nptl-stack.o
+000000000040235b l F .text 0000000000000005 __nptl_free_stacks.cold
+0000000000000000 l df *ABS* 0000000000000000 unwind-dw2.o
+000000000047fb50 l F .text 000000000000007c init_dwarf_reg_size_table
+00000000004bca00 l O .bss 0000000000000012 dwarf_reg_size_table
+000000000047fbd0 l F .text 00000000000001a8 uw_install_context_1
+0000000000402360 l F .text 0000000000000005 uw_install_context_1.cold
+000000000047fd80 l F .text 000000000000019f read_encoded_value
+0000000000402365 l F .text 0000000000000005 read_encoded_value.cold
+000000000047ff20 l F .text 000000000000081c execute_stack_op
+000000000040236a l F .text 000000000000000a execute_stack_op.cold
+0000000000480740 l F .text 000000000000042c uw_update_context_1
+0000000000402374 l F .text 000000000000000a uw_update_context_1.cold
+0000000000480b70 l F .text 0000000000000870 execute_cfa_program
+000000000040237e l F .text 0000000000000005 execute_cfa_program.cold
+00000000004813e0 l F .text 0000000000000662 uw_frame_state_for
+0000000000402383 l F .text 0000000000000005 uw_frame_state_for.cold
+0000000000481a50 l F .text 0000000000000175 uw_init_context_1
+00000000004bc9f0 l O .bss 0000000000000004 once_regsizes.0
+0000000000402388 l F .text 0000000000000005 uw_init_context_1.cold
+0000000000481bd0 l F .text 000000000000015a _Unwind_RaiseException_Phase2
+000000000040238d l F .text 0000000000000005 _Unwind_RaiseException_Phase2.cold
+0000000000481d30 l F .text 000000000000017a _Unwind_ForcedUnwind_Phase2
+0000000000402392 l F .text 0000000000000005 _Unwind_ForcedUnwind_Phase2.cold
+0000000000402397 l F .text 0000000000000006 _Unwind_GetGR.cold
+000000000040239d l F .text 0000000000000006 _Unwind_SetGR.cold
+0000000000482120 l F .text 0000000000000005 _Unwind_DebugHook
+00000000004023a3 l F .text 0000000000000005 _Unwind_RaiseException.cold
+00000000004023a8 l F .text 0000000000000005 _Unwind_Resume.cold
+00000000004023ad l F .text 0000000000000005 _Unwind_Resume_or_Rethrow.cold
+00000000004023b2 l F .text 0000000000000005 _Unwind_Backtrace.cold
+0000000000000000 l df *ABS* 0000000000000000 unwind-dw2-fde-dip.o
+0000000000482ad0 l F .text 000000000000001c fde_unencoded_compare
+0000000000482af0 l F .text 00000000000000bf frame_downheap
+0000000000482bb0 l F .text 000000000000009c frame_heapsort
+0000000000482c50 l F .text 0000000000000142 read_encoded_value_with_base
+00000000004023b7 l F .text 0000000000000006 read_encoded_value_with_base.cold
+0000000000482da0 l F .text 0000000000000121 get_cie_encoding
+0000000000482ed0 l F .text 0000000000000222 classify_object_over_fdes
+00000000004023bd l F .text 0000000000000005 classify_object_over_fdes.cold
+0000000000483100 l F .text 000000000000009b fde_single_encoding_compare
+00000000004023c2 l F .text 0000000000000005 fde_single_encoding_compare.cold
+00000000004831a0 l F .text 00000000000000f0 fde_mixed_encoding_compare
+00000000004023c7 l F .text 0000000000000005 fde_mixed_encoding_compare.cold
+0000000000483290 l F .text 0000000000000295 add_fdes
+00000000004023cc l F .text 0000000000000005 add_fdes.cold
+0000000000483530 l F .text 00000000000002ed linear_search_fdes
+00000000004023d1 l F .text 0000000000000005 linear_search_fdes.cold
+0000000000483820 l F .text 00000000000006a0 search_object
+00000000004a2ea8 l O .rodata 0000000000000008 terminator.1
+00000000004bca20 l O .bss 0000000000000008 marker.2
+00000000004023d6 l F .text 0000000000000005 search_object.cold
+00000000004bca40 l O .bss 0000000000000028 object_mutex
+00000000004bca78 l O .bss 0000000000000008 unseen_objects
+00000000004bca68 l O .bss 0000000000000004 any_objects_registered
+00000000004bca70 l O .bss 0000000000000008 seen_objects
+00000000004023db l F .text 0000000000000005 _Unwind_Find_FDE.cold
+0000000000000000 l df *ABS* 0000000000000000 unwind-c.o
+0000000000484780 l F .text 0000000000000055 base_of_encoded_value
+00000000004023e0 l F .text 0000000000000006 base_of_encoded_value.cold
+00000000004847e0 l F .text 0000000000000142 read_encoded_value_with_base
+00000000004023e6 l F .text 0000000000000006 read_encoded_value_with_base.cold
+00000000004023ec l F .text 0000000000000005 __gcc_personality_v0.cold
+0000000000000000 l df *ABS* 0000000000000000 crtstuff.c
+00000000004a4f48 l O .eh_frame 0000000000000000 __EH_FRAME_BEGIN__
+0000000000402440 l F .text 0000000000000000 deregister_tm_clones
+0000000000402470 l F .text 0000000000000000 register_tm_clones
+00000000004024b0 l F .text 0000000000000000 __do_global_dtors_aux
+00000000004b7280 l O .bss 0000000000000001 completed.1
+00000000004b17d8 l O .fini_array 0000000000000000 __do_global_dtors_aux_fini_array_entry
+00000000004024f0 l F .text 0000000000000000 frame_dummy
+00000000004b72a0 l O .bss 0000000000000030 object.0
+00000000004b17d0 l O .init_array 0000000000000000 __frame_dummy_init_array_entry
+0000000000000000 l df *ABS* 0000000000000000 segments.c
+0000000000000000 l df *ABS* 0000000000000000 libc-start.o
+0000000000403020 l F .text 0000000000000188 handle_zhaoxin
+00000000004031b0 l F .text 000000000000015e handle_amd
+0000000000403310 l F .text 000000000000003d call_fini
+0000000000403350 l F .text 000000000000009c __libc_start_call_main
+00000000004033f0 l F .text 0000000000000182 get_common_indices.constprop.0
+0000000000403580 l F .text 000000000000049b get_common_cache_info.constprop.0
+0000000000403a20 l F .text 00000000000002ab intel_check_word.constprop.0
+0000000000487160 l O .rodata 0000000000000220 intel_02_known
+0000000000487430 l O .rodata 0000000000000011 __PRETTY_FUNCTION__.1
+0000000000403cd0 l F .text 00000000000000ee handle_intel.constprop.0
+0000000000403dc0 l F .text 00000000000004c8 update_active.constprop.0
+0000000000487450 l O .rodata 0000000000000017 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 libc-tls.o
+00000000004b7760 l O .bss 0000000000000410 static_slotinfo
+0000000000000000 l df *ABS* 0000000000000000 dcigettext.o
+0000000000405c80 l F .text 00000000000001e6 plural_eval
+0000000000484be0 l F __libc_freeres_fn 00000000000000be free_mem
+00000000004b7bf0 l O .bss 0000000000000008 root
+00000000004b7be8 l O .bss 0000000000000008 transmem_list
+0000000000405e70 l F .text 0000000000000076 transcmp
+00000000004b7bc8 l O .bss 0000000000000004 output_charset_cached.1
+00000000004b7bc0 l O .bss 0000000000000008 output_charset_cache.0
+00000000004b7be0 l O .bss 0000000000000004 lock.4
+00000000004b7bd8 l O .bss 0000000000000008 freemem.3
+00000000004b7bd0 l O .bss 0000000000000008 freemem_size.2
+00000000004b7c00 l O .bss 0000000000000038 tree_lock
+00000000004b6ab8 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 finddomain.o
+00000000004b7c78 l O .bss 0000000000000008 _nl_loaded_domains
+00000000004b7c40 l O .bss 0000000000000038 lock.0
+0000000000000000 l df *ABS* 0000000000000000 localealias.o
+0000000000408a90 l F .text 0000000000000016 alias_compare
+0000000000408ab0 l F .text 0000000000000506 read_alias_file
+0000000000487d28 l O .rodata 000000000000000e aliasfile.0
+00000000004b7cb0 l O .bss 0000000000000008 nmap
+00000000004bca80 l O __libc_freeres_ptrs 0000000000000008 map
+00000000004b7ca8 l O .bss 0000000000000008 maxmap
+00000000004b7cc0 l O .bss 0000000000000008 string_space_act
+00000000004bca88 l O __libc_freeres_ptrs 0000000000000008 string_space
+00000000004b7cb8 l O .bss 0000000000000008 string_space_max
+00000000004b7cc8 l O .bss 0000000000000004 lock
+00000000004b7ca0 l O .bss 0000000000000008 locale_alias_path.1
+0000000000000000 l df *ABS* 0000000000000000 plural.o
+0000000000409fb0 l F .text 000000000000072e new_exp.constprop.1
+000000000040a6e0 l F .text 000000000000001d new_exp.constprop.0
+000000000040a700 l F .text 00000000000007b3 new_exp
+0000000000488150 l O .rodata 000000000000001b yypact
+0000000000488040 l O .rodata 0000000000000107 yytranslate
+0000000000487fa0 l O .rodata 0000000000000039 yycheck
+0000000000487fe0 l O .rodata 0000000000000039 yytable
+0000000000488020 l O .rodata 000000000000001b yydefact
+0000000000487f68 l O .rodata 000000000000000e yyr2
+0000000000488147 l O .rodata 0000000000000003 yypgoto
+0000000000487f78 l O .rodata 000000000000000e yyr1
+0000000000488019 l O .rodata 0000000000000003 yydefgoto
+0000000000000000 l df *ABS* 0000000000000000 plural-exp.o
+00000000004881a0 l O .rodata 0000000000000020 plvar
+0000000000488180 l O .rodata 0000000000000020 plone
+0000000000000000 l df *ABS* 0000000000000000 cxa_atexit.o
+00000000004881e8 l O .rodata 000000000000000d __PRETTY_FUNCTION__.0
+0000000000488200 l O .rodata 0000000000000012 __PRETTY_FUNCTION__.1
+00000000004b7d20 l O .bss 0000000000000410 initial
+0000000000000000 l df *ABS* 0000000000000000 msort.o
+000000000040bf10 l F .text 000000000000041a msort_with_tmp.part.0
+00000000004b8140 l O .bss 0000000000000004 pagesize.0
+00000000004b8138 l O .bss 0000000000000008 phys_pages.1
+0000000000000000 l df *ABS* 0000000000000000 fxprintf.o
+000000000040e200 l F .text 00000000000001ad locked_vfxprintf
+0000000000000000 l df *ABS* 0000000000000000 iofwide.o
+0000000000488410 l O .rodata 000000000000000a __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 libc_fatal.o
+0000000000410d00 l F .text 0000000000000158 __libc_message.constprop.0
+0000000000000000 l df *ABS* 0000000000000000 genops.o
+0000000000484df0 l F __libc_freeres_fn 0000000000000041 buffer_free
+00000000004b8150 l O .bss 0000000000000008 freeres_list
+00000000004b8158 l O .bss 0000000000000001 dealloc_buffers
+0000000000413cc0 l F .text 00000000000001ea save_for_backup
+0000000000413eb0 l F .text 0000000000000090 flush_cleanup
+00000000004b8160 l O .bss 0000000000000008 run_fp
+00000000004b8170 l O .bss 0000000000000010 list_all_lock
+0000000000413f40 l F .text 0000000000000236 _IO_un_link.part.0
+00000000004b815c l O .bss 0000000000000004 stdio_needs_locking
+00000000004b7268 l O __libc_atexit 0000000000000008 __elf_set___libc_atexit_element__IO_cleanup__
+00000000004b6ac0 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_buffer_free__
+0000000000000000 l df *ABS* 0000000000000000 stdfiles.o
+00000000004b8180 l O .bss 0000000000000010 _IO_stdfile_2_lock
+00000000004b5220 l O .data 00000000000000e8 _IO_wide_data_2
+00000000004b8190 l O .bss 0000000000000010 _IO_stdfile_1_lock
+00000000004b5400 l O .data 00000000000000e8 _IO_wide_data_1
+00000000004b81a0 l O .bss 0000000000000010 _IO_stdfile_0_lock
+00000000004b55e0 l O .data 00000000000000e8 _IO_wide_data_0
+0000000000000000 l df *ABS* 0000000000000000 strops.o
+0000000000416570 l F .text 00000000000001b5 enlarge_userbuf
+00000000004886f0 l O .rodata 0000000000000010 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 pthread_kill.o
+0000000000488738 l O .rodata 0000000000000008 sigall_set
+0000000000000000 l df *ABS* 0000000000000000 pthread_rwlock_init.o
+0000000000488740 l O .rodata 0000000000000008 default_rwlockattr
+0000000000000000 l df *ABS* 0000000000000000 malloc.o
+0000000000417ad0 l F .text 0000000000000010 _dl_tunable_set_arena_max
+00000000004b5720 l O .data 0000000000000088 mp_
+0000000000417ae0 l F .text 0000000000000010 _dl_tunable_set_arena_test
+0000000000417af0 l F .text 000000000000003f _dl_tunable_set_tcache_max
+0000000000417b30 l F .text 0000000000000019 _dl_tunable_set_tcache_count
+0000000000417b50 l F .text 0000000000000010 _dl_tunable_set_tcache_unsorted_limit
+0000000000417b60 l F .text 000000000000001c malloc_printerr
+0000000000417b80 l F .text 000000000000011b int_mallinfo
+00000000004b57c0 l O .data 0000000000000898 main_arena
+0000000000417ca0 l F .text 000000000000002e _dl_tunable_set_mxfast
+00000000004bc1f8 l O .bss 0000000000000008 global_max_fast
+0000000000417cd0 l F .text 000000000000001a _dl_tunable_set_trim_threshold
+0000000000417cf0 l F .text 000000000000001a _dl_tunable_set_top_pad
+0000000000417d10 l F .text 000000000000001a _dl_tunable_set_mmap_threshold
+0000000000417d30 l F .text 0000000000000019 _dl_tunable_set_mmaps_max
+0000000000417d50 l F .text 000000000000000f _dl_tunable_set_perturb_byte
+00000000004bc1f4 l O .bss 0000000000000004 perturb_byte
+0000000000417d60 l F .text 000000000000009d munmap_chunk
+0000000000489a38 l O .rodata 000000000000000d __PRETTY_FUNCTION__.13
+0000000000417e00 l F .text 000000000000005e _dl_tunable_set_hugetlb
+0000000000417e60 l F .text 0000000000000027 detach_arena.part.0
+0000000000489a98 l O .rodata 000000000000000d __PRETTY_FUNCTION__.4
+0000000000417e90 l F .text 000000000000013e get_free_list
+00000000004bc1e8 l O .bss 0000000000000008 free_list
+0000000000000030 l .tbss 0000000000000008 thread_arena
+00000000004bc1f0 l O .bss 0000000000000004 free_list_lock
+0000000000489aa8 l O .rodata 000000000000000e __PRETTY_FUNCTION__.3
+0000000000417fd0 l F .text 0000000000000597 __malloc_info.part.0
+0000000000418570 l F .text 00000000000000dc systrim.constprop.0
+00000000004bc200 l O .bss 0000000000000001 __always_fail_morecore
+0000000000418650 l F .text 00000000000000da unlink_chunk.constprop.0
+0000000000418730 l F .text 00000000000001b8 malloc_consolidate
+00000000004188f0 l F .text 0000000000000a14 _int_free
+0000000000000020 l .tbss 0000000000000008 tcache
+00000000004bc1d0 l O .bss 0000000000000008 tcache_key
+00000000004bc1d8 l O .bss 0000000000000008 aligned_heap_area
+00000000004b5700 l O .data 0000000000000004 may_shrink_heap.12
+0000000000489a48 l O .rodata 000000000000000a __PRETTY_FUNCTION__.11
+0000000000489a58 l O .rodata 000000000000000a __PRETTY_FUNCTION__.10
+0000000000419310 l F .text 00000000000001fe ptmalloc_init.part.0
+00000000004bc1e0 l O .bss 0000000000000001 __malloc_initialized
+0000000000419510 l F .text 000000000000024b alloc_new_heap
+0000000000419760 l F .text 00000000000000d6 sysmalloc_mmap_fallback.constprop.0
+0000000000419840 l F .text 00000000000004ec arena_get2.part.0
+00000000004bc1c8 l O .bss 0000000000000008 narenas_limit.2
+00000000004b5708 l O .data 0000000000000008 narenas
+00000000004bc1c0 l O .bss 0000000000000008 next_to_use.5
+0000000000489af0 l O .rodata 0000000000000016 __PRETTY_FUNCTION__.6
+00000000004bc1e4 l O .bss 0000000000000004 list_lock
+0000000000419d30 l F .text 000000000000009a arena_get_retry
+0000000000419dd0 l F .text 000000000000013d sysmalloc_mmap.constprop.0
+0000000000489a68 l O .rodata 000000000000000f __PRETTY_FUNCTION__.9
+0000000000419f10 l F .text 0000000000000964 sysmalloc
+0000000000489a78 l O .rodata 000000000000000a __PRETTY_FUNCTION__.8
+000000000041a880 l F .text 0000000000000e7f _int_malloc
+0000000000489a88 l O .rodata 000000000000000c __PRETTY_FUNCTION__.7
+000000000041b700 l F .text 000000000000011d tcache_init.part.0
+000000000041b820 l F .text 0000000000000270 _int_realloc
+0000000000489a08 l O .rodata 000000000000000d __PRETTY_FUNCTION__.16
+000000000041ba90 l F .text 00000000000001c3 _int_memalign
+00000000004899e8 l O .rodata 000000000000000e __PRETTY_FUNCTION__.18
+0000000000000028 l .tbss 0000000000000001 tcache_shutting_down
+0000000000489ab8 l O .rodata 000000000000000e __PRETTY_FUNCTION__.1
+0000000000489b10 l O .rodata 000000000000001e __PRETTY_FUNCTION__.0
+0000000000489a28 l O .rodata 000000000000000f __PRETTY_FUNCTION__.14
+0000000000489a18 l O .rodata 000000000000000d __PRETTY_FUNCTION__.15
+00000000004899f8 l O .rodata 000000000000000e __PRETTY_FUNCTION__.17
+00000000004899d8 l O .rodata 000000000000000e __PRETTY_FUNCTION__.19
+0000000000488a14 l O .rodata 0000000000000006 __PRETTY_FUNCTION__.20
+0000000000000000 l df *ABS* 0000000000000000 memcpy.o
+000000000041e100 l F .text 00000000000000f6 __new_memcpy_ifunc
+0000000000000000 l df *ABS* 0000000000000000 memmove.o
+000000000041e200 l F .text 00000000000000f6 __libc_memmove_ifunc
+0000000000000000 l df *ABS* 0000000000000000 mempcpy.o
+000000000041e300 l F .text 00000000000000f6 __mempcpy_ifunc
+0000000000000000 l df *ABS* 0000000000000000 memset.o
+000000000041e400 l F .text 00000000000000f1 memset_ifunc
+0000000000000000 l df *ABS* 0000000000000000 rawmemchr.o
+000000000041e500 l F .text 000000000000007d __rawmemchr_ifunc
+0000000000000000 l df *ABS* 0000000000000000 stpcpy.o
+000000000041e580 l F .text 0000000000000071 __stpcpy_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strcasecmp_l.o
+000000000041e600 l F .text 0000000000000080 __strcasecmp_l_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strchr.o
+000000000041e680 l F .text 0000000000000070 strchr_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strchrnul.o
+000000000041e6f0 l F .text 0000000000000078 __strchrnul_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strcmp.o
+000000000041e770 l F .text 0000000000000088 strcmp_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strcpy.o
+000000000041e800 l F .text 0000000000000071 strcpy_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strcspn.o
+000000000041e880 l F .text 000000000000001e strcspn_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strlen.o
+000000000041e8e0 l F .text 0000000000000078 strlen_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strncmp.o
+000000000041e960 l F .text 0000000000000080 strncmp_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strstr.o
+000000000041e9e0 l F .text 000000000000048e two_way_long_needle
+000000000041f1e0 l F .text 0000000000000048 __libc_strstr_ifunc
+0000000000000000 l df *ABS* 0000000000000000 mbsrtowcs.o
+00000000004bc208 l O .bss 0000000000000008 state
+0000000000000000 l df *ABS* 0000000000000000 wcsmbsload.o
+00000000004b3a60 l O .data.rel.ro 0000000000000068 to_wc
+00000000004b39e0 l O .data.rel.ro 0000000000000068 to_mb
+0000000000000000 l df *ABS* 0000000000000000 mbsrtowcs_l.o
+000000000048a018 l O .rodata 000000000000000e __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 sysconf.o
+0000000000435e90 l F .text 0000000000000130 __sysconf_check_spec
+000000000048a178 l O .rodata 000000000000000e __PRETTY_FUNCTION__.0
+000000000048a450 l O .rodata 0000000000000018 __PRETTY_FUNCTION__.2
+000000000048a470 l O .rodata 0000000000000011 __PRETTY_FUNCTION__.1
+0000000000000000 l df *ABS* 0000000000000000 getcwd.o
+000000000048a4e0 l O .rodata 0000000000000009 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 getpagesize.o
+000000000048a520 l O .rodata 000000000000000e __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 tsearch.o
+0000000000437630 l F .text 000000000000008f trecurse
+00000000004376c0 l F .text 000000000000008d trecurse_r
+0000000000437750 l F .text 00000000000000a7 trecurse.constprop.1
+0000000000437800 l F .text 00000000000001d5 tdestroy_recurse
+0000000000000000 l df *ABS* 0000000000000000 getsysstats.o
+00000000004387b0 l F .text 00000000000001cc read_sysfs_file
+000000000048a5d8 l O .rodata 000000000000000a __PRETTY_FUNCTION__.0
+0000000000438980 l F .text 00000000000001ee get_nproc_stat
+0000000000000000 l df *ABS* 0000000000000000 malloc-hugepages.o
+000000000048a6e0 l O .rodata 0000000000000018 mode_always.2
+000000000048a6c0 l O .rodata 0000000000000018 mode_madvise.1
+000000000048a6a0 l O .rodata 0000000000000018 mode_never.0
+0000000000000000 l df *ABS* 0000000000000000 dl-tls.o
+0000000000439440 l F .text 00000000000000ab _dl_resize_dtv
+000000000048a960 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.2
+000000000048a940 l O .rodata 0000000000000016 __PRETTY_FUNCTION__.1
+000000000048a920 l O .rodata 0000000000000014 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-tunables.o
+000000000043a210 l F .text 00000000000000f1 do_tunable_update_val
+00000000004b3ae0 l O .data.rel.ro 0000000000000f50 tunable_list
+0000000000000000 l df *ABS* 0000000000000000 dl-error.o
+000000000043ada0 l F .text 00000000000000a7 fatal_error
+0000000000000038 l .tbss 0000000000000008 catch_hook
+0000000000000000 l df *ABS* 0000000000000000 dl-support.o
+00000000004b6220 l O .data 00000000000004a0 _dl_main_map
+00000000004b1820 l O .data.rel.ro 0000000000000018 rfv.0
+000000000048aca0 l O .rodata 0000000000000102 unsecure_envvars.3
+000000000048ac60 l O .rodata 000000000000000b __PRETTY_FUNCTION__.2
+000000000048ae10 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.1
+00000000004b6170 l O .data 0000000000000008 __compound_literal.3
+00000000004b66d0 l O .data 0000000000000018 __compound_literal.0
+00000000004b66c0 l O .data 0000000000000008 __compound_literal.1
+00000000004bc578 l O .bss 0000000000000008 __compound_literal.2
+0000000000000000 l df *ABS* 0000000000000000 gconv.o
+000000000048b0b0 l O .rodata 0000000000000008 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 gconv_db.o
+0000000000484e40 l F __libc_freeres_fn 00000000000000bc free_derivation
+000000000043d0e0 l F .text 000000000000003f derivation_compare
+000000000043d120 l F .text 0000000000000d0b find_derivation
+00000000004bc5a8 l O .bss 0000000000000008 known_derivations
+000000000048b0e0 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.0
+0000000000484f00 l F __libc_freeres_fn 00000000000003f1 free_modules_db
+0000000000485300 l F __libc_freeres_fn 0000000000000225 free_mem
+00000000004b6ac8 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 gconv_conf.o
+000000000043e360 l F .text 00000000000003bb __gconv_get_path
+000000000048b6a0 l O .rodata 0000000000000020 default_gconv_path
+000000000048b270 l O .rodata 0000000000000011 __PRETTY_FUNCTION__.1
+000000000048b690 l O .rodata 0000000000000010 empty_path_elem
+0000000000485530 l F __libc_freeres_fn 0000000000000029 free_mem
+000000000043e720 l F .text 000000000000010e insert_module
+000000000043e830 l F .text 00000000000003e1 add_module
+000000000048b269 l O .rodata 0000000000000004 gconv_module_ext
+000000000043ec20 l F .text 0000000000000387 read_conf_file.isra.0
+00000000004bc5c8 l O .bss 0000000000000004 modcounter.0
+000000000043efb0 l F .text 0000000000000381 __gconv_read_conf
+000000000048b6c0 l O .rodata 000000000000000e gconv_conf_filename
+00000000004b6700 l O .data 00000000000002a0 builtin_modules
+000000000048b2a0 l O .rodata 00000000000003e7 builtin_aliases
+00000000004bc5cc l O .bss 0000000000000004 once
+00000000004b6ad0 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 gconv_builtin.o
+000000000048b710 l O .rodata 000000000000001a __PRETTY_FUNCTION__.0
+00000000004b4a80 l O .data.rel.ro 0000000000000180 map
+0000000000000000 l df *ABS* 0000000000000000 gconv_simple.o
+000000000048bbc0 l O .rodata 0000000000000020 __PRETTY_FUNCTION__.20
+000000000048bba0 l O .rodata 0000000000000020 __PRETTY_FUNCTION__.19
+000000000048bb60 l O .rodata 0000000000000022 __PRETTY_FUNCTION__.18
+000000000048bb20 l O .rodata 0000000000000022 __PRETTY_FUNCTION__.17
+000000000048bc80 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.16
+000000000048bae0 l O .rodata 0000000000000021 __PRETTY_FUNCTION__.15
+000000000048baa0 l O .rodata 0000000000000021 __PRETTY_FUNCTION__.14
+000000000048bc60 l O .rodata 000000000000001b __PRETTY_FUNCTION__.13
+000000000048ba80 l O .rodata 0000000000000020 __PRETTY_FUNCTION__.12
+000000000048bc40 l O .rodata 000000000000001a __PRETTY_FUNCTION__.11
+000000000048b7b1 l O .rodata 0000000000000005 inmask.9
+000000000048ba60 l O .rodata 0000000000000020 __PRETTY_FUNCTION__.10
+000000000048bc20 l O .rodata 000000000000001a __PRETTY_FUNCTION__.8
+000000000048ba40 l O .rodata 0000000000000020 __PRETTY_FUNCTION__.7
+000000000048bc00 l O .rodata 000000000000001a __PRETTY_FUNCTION__.6
+000000000048ba20 l O .rodata 0000000000000020 __PRETTY_FUNCTION__.5
+000000000048bbe0 l O .rodata 000000000000001a __PRETTY_FUNCTION__.4
+000000000048b9e0 l O .rodata 0000000000000027 __PRETTY_FUNCTION__.3
+000000000048b9a0 l O .rodata 0000000000000021 __PRETTY_FUNCTION__.2
+000000000048b960 l O .rodata 0000000000000027 __PRETTY_FUNCTION__.1
+000000000048b920 l O .rodata 0000000000000021 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 gconv_cache.o
+0000000000485560 l F __libc_freeres_fn 000000000000003d free_mem
+00000000004bc5d0 l O .bss 0000000000000004 cache_malloced
+00000000004bc5e0 l O .bss 0000000000000008 gconv_cache
+00000000004bc5d8 l O .bss 0000000000000008 cache_size
+0000000000447530 l F .text 00000000000000ec find_module_idx
+0000000000447620 l F .text 0000000000000150 find_module.constprop.0
+00000000004b6ad8 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 gconv_dl.o
+0000000000447f20 l F .text 000000000000000f known_compare
+00000000004855a0 l F __libc_freeres_fn 000000000000001f do_release_all
+00000000004855c0 l F __libc_freeres_fn 000000000000002b free_mem
+00000000004bc5e8 l O .bss 0000000000000008 loaded
+0000000000447f30 l F .text 000000000000007b do_release_shlib
+000000000048bd30 l O .rodata 0000000000000011 __PRETTY_FUNCTION__.0
+000000000048bd50 l O .rodata 0000000000000013 __PRETTY_FUNCTION__.1
+00000000004b6ae0 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 gconv_charset.o
+00000000004481b0 l F .text 0000000000000158 gconv_parse_code
+0000000000000000 l df *ABS* 0000000000000000 setlocale.o
+00000000004485f0 l F .text 00000000000002bb new_composite_name
+00000000004b4c80 l O .data.rel.ro 0000000000000068 _nl_current_used
+00000000004b4c00 l O .data.rel.ro 0000000000000068 _nl_category_postload
+00000000004855f0 l F __libc_freeres_fn 00000000000000c1 free_category
+0000000000000000 l df *ABS* 0000000000000000 findlocale.o
+000000000048be79 l O .rodata 0000000000000004 slashdot.0
+000000000048bea0 l O .rodata 0000000000000034 codeset_idx.2
+000000000048be80 l O .rodata 0000000000000010 __PRETTY_FUNCTION__.1
+0000000000000000 l df *ABS* 0000000000000000 loadlocale.o
+000000000048c540 l O .rodata 0000000000000068 _nl_category_num_items
+00000000004b1840 l O .data.rel.ro 0000000000000068 _nl_value_types
+000000000048c5b0 l O .rodata 0000000000000017 __PRETTY_FUNCTION__.0
+000000000048c380 l O .rodata 0000000000000158 _nl_value_type_LC_CTYPE
+000000000048c2a0 l O .rodata 0000000000000018 _nl_value_type_LC_NUMERIC
+000000000048c020 l O .rodata 000000000000027c _nl_value_type_LC_TIME
+000000000048c4e0 l O .rodata 000000000000004c _nl_value_type_LC_COLLATE
+000000000048c2c0 l O .rodata 00000000000000b8 _nl_value_type_LC_MONETARY
+000000000048bff0 l O .rodata 0000000000000014 _nl_value_type_LC_MESSAGES
+000000000048bfe0 l O .rodata 000000000000000c _nl_value_type_LC_PAPER
+000000000048bfc0 l O .rodata 000000000000001c _nl_value_type_LC_NAME
+000000000048bf80 l O .rodata 0000000000000034 _nl_value_type_LC_ADDRESS
+000000000048bff0 l O .rodata 0000000000000014 _nl_value_type_LC_TELEPHONE
+000000000048c5c8 l O .rodata 0000000000000008 _nl_value_type_LC_MEASUREMENT
+000000000048bf40 l O .rodata 0000000000000040 _nl_value_type_LC_IDENTIFICATION
+0000000000000000 l df *ABS* 0000000000000000 loadarchive.o
+00000000004bc6c0 l O .bss 0000000000000008 archloaded
+00000000004bc788 l O .bss 0000000000000008 archmapped
+00000000004bc770 l O .bss 0000000000000018 headmap
+00000000004bc6e0 l O .bss 0000000000000090 archive_stat
+000000000048c660 l O .rodata 000000000000001f archfname
+000000000048c640 l O .rodata 000000000000001d __PRETTY_FUNCTION__.1
+000000000048c620 l O .rodata 0000000000000017 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 C-ctype.o
+00000000004b1bb0 l O .data.rel.ro 0000000000000018 lc_ctype_data
+0000000000498a20 l O .rodata 00000000000019ec translit_from_idx
+0000000000495640 l O .rodata 00000000000033d8 translit_from_tbl
+0000000000493c40 l O .rodata 00000000000019ec translit_to_idx
+000000000048e040 l O .rodata 0000000000005bfc translit_to_tbl
+0000000000000000 l df *ABS* 0000000000000000 libc_sigaction.o
+000000000044ad90 l F .text 0000000000000000 __restore_rt
+0000000000000000 l df *ABS* 0000000000000000 setenv.o
+00000000004859e0 l F __libc_freeres_fn 00000000000000b1 free_mem
+00000000004bc7a0 l O .bss 0000000000000004 envlock
+00000000004bc790 l O .bss 0000000000000008 last_environ
+00000000004bc798 l O .bss 0000000000000008 known_values
+00000000004b6ae8 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 vfprintf-internal.o
+000000000044b6a0 l F .text 0000000000000124 group_number
+000000000044b7d0 l F .text 00000000000000df _IO_helper_overflow
+000000000044b8b0 l F .text 0000000000000025 outstring_func.part.0
+000000000049a558 l O .rodata 000000000000000f __PRETTY_FUNCTION__.2
+000000000044b8e0 l F .text 00000000000002ee _i18n_number_rewrite
+000000000044bbd0 l F .text 0000000000000488 outstring_converted_wide_string
+000000000044c060 l F .text 0000000000002496 printf_positional
+000000000049a600 l O .rodata 0000000000000012 __PRETTY_FUNCTION__.1
+000000000049a5a0 l O .rodata 000000000000005b jump_table
+00000000004b1be0 l O .data.rel.ro 00000000000000f8 step4_jumps.0
+000000000049a4a5 l O .rodata 0000000000000007 null
+00000000004b21e0 l O .data.rel.ro 00000000000000f8 step0_jumps.9
+00000000004b1de0 l O .data.rel.ro 00000000000000f8 step4_jumps.5
+00000000004b20e0 l O .data.rel.ro 00000000000000f8 step1_jumps.8
+00000000004b1ce0 l O .data.rel.ro 00000000000000f8 step3b_jumps.4
+00000000004b1ee0 l O .data.rel.ro 00000000000000f8 step3a_jumps.6
+00000000004b1fe0 l O .data.rel.ro 00000000000000f8 step2_jumps.7
+00000000004509f0 l F .text 000000000000022f buffered_vfprintf
+00000000004b7040 l O __libc_IO_vtables 00000000000000a8 _IO_helper_jumps
+0000000000000000 l df *ABS* 0000000000000000 vfwprintf-internal.o
+0000000000450c20 l F .text 000000000000010f _IO_helper_overflow
+0000000000450d30 l F .text 00000000000000d5 group_number
+0000000000450e10 l F .text 0000000000000025 outstring_func.part.0
+000000000049a558 l O .rodata 000000000000000f __PRETTY_FUNCTION__.2
+0000000000450e40 l F .text 00000000000001b5 _i18n_number_rewrite
+0000000000451000 l F .text 0000000000000488 outstring_converted_wide_string
+0000000000451490 l F .text 00000000000027df printf_positional
+000000000049a600 l O .rodata 0000000000000012 __PRETTY_FUNCTION__.1
+000000000049a660 l O .rodata 000000000000005b jump_table
+00000000004b22e0 l O .data.rel.ro 00000000000000f8 step4_jumps.0
+000000000049a6c0 l O .rodata 000000000000001c null
+00000000004b28e0 l O .data.rel.ro 00000000000000f8 step0_jumps.9
+00000000004b24e0 l O .data.rel.ro 00000000000000f8 step4_jumps.5
+00000000004b26e0 l O .data.rel.ro 00000000000000f8 step2_jumps.7
+00000000004b27e0 l O .data.rel.ro 00000000000000f8 step1_jumps.8
+00000000004b23e0 l O .data.rel.ro 00000000000000f8 step3b_jumps.4
+00000000004b25e0 l O .data.rel.ro 00000000000000f8 step3a_jumps.6
+0000000000456230 l F .text 000000000000027f buffered_vfprintf
+00000000004b7100 l O __libc_IO_vtables 00000000000000a8 _IO_helper_jumps
+0000000000000000 l df *ABS* 0000000000000000 errname.o
+000000000049a6e0 l O .rodata 000000000000010c _sys_errnameidx
+000000000049a800 l O .rodata 0000000000000455 _sys_errname
+0000000000000000 l df *ABS* 0000000000000000 iopadn.o
+000000000049b100 l O .rodata 0000000000000010 blanks
+000000000049b0e0 l O .rodata 0000000000000010 zeroes
+0000000000000000 l df *ABS* 0000000000000000 iowpadn.o
+000000000049b160 l O .rodata 0000000000000040 blanks
+000000000049b120 l O .rodata 0000000000000040 zeroes
+0000000000000000 l df *ABS* 0000000000000000 wgenops.o
+00000000004584e0 l F .text 0000000000000250 save_for_wbackup
+0000000000000000 l df *ABS* 0000000000000000 pthread_mutex_conf.o
+0000000000459d60 l F .text 000000000000000e _dl_tunable_set_mutex_spin_count
+0000000000459d70 l F .text 000000000000000f _dl_tunable_set_stack_cache_size
+0000000000000000 l df *ABS* 0000000000000000 pthread_mutex_lock.o
+0000000000459de0 l F .text 00000000000006f6 __pthread_mutex_lock_full
+000000000049b2b0 l O .rodata 000000000000001a __PRETTY_FUNCTION__.1
+000000000049b2d0 l O .rodata 0000000000000016 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 pthread_mutex_unlock.o
+000000000045a7c0 l F .text 000000000000046a __pthread_mutex_unlock_full
+000000000049b330 l O .rodata 000000000000001f __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 tpp.o
+000000000049b410 l O .rodata 000000000000001e __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 memchr.o
+000000000045b9f0 l F .text 000000000000007d memchr_ifunc
+0000000000000000 l df *ABS* 0000000000000000 memcmp.o
+000000000045ba70 l F .text 0000000000000070 memcmp_ifunc
+0000000000000000 l df *ABS* 0000000000000000 memmem.o
+000000000045bae0 l F .text 000000000000038c two_way_long_needle
+0000000000000000 l df *ABS* 0000000000000000 strnlen.o
+000000000045c180 l F .text 0000000000000078 __strnlen_ifunc
+0000000000000000 l df *ABS* 0000000000000000 strrchr.o
+000000000045c200 l F .text 0000000000000078 strrchr_ifunc
+0000000000000000 l df *ABS* 0000000000000000 wcslen.o
+000000000045f5e0 l F .text 0000000000000070 __wcslen_ifunc
+0000000000000000 l df *ABS* 0000000000000000 wcrtomb.o
+00000000004bc818 l O .bss 0000000000000008 state
+000000000049b490 l O .rodata 0000000000000013 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 wcsrtombs.o
+00000000004bc820 l O .bss 0000000000000008 state
+000000000049b4f8 l O .rodata 000000000000000c __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 wcsnlen.o
+000000000045ff30 l F .text 0000000000000070 __wcsnlen_ifunc
+0000000000000000 l df *ABS* 0000000000000000 dl-exception.o
+00000000004622e0 l F .text 0000000000000014 length_mismatch
+000000000049b590 l O .rodata 000000000000000e _dl_out_of_memory
+0000000000000000 l df *ABS* 0000000000000000 dl-load.o
+00000000004627f0 l F .text 00000000000000a2 is_dst
+00000000004628a0 l F .text 000000000000025e is_trusted_path_normalize
+0000000000462b00 l F .text 0000000000000353 open_verify.constprop.0
+0000000000462e60 l F .text 00000000000003d8 open_verify.constprop.1
+0000000000463240 l F .text 00000000000000f1 add_path.constprop.0.isra.0
+0000000000463340 l F .text 0000000000000595 open_path.isra.0
+00000000004bc828 l O .bss 0000000000000008 max_dirnamelen
+00000000004638e0 l F .text 00000000000000ec add_name_to_object.isra.0
+000000000049bd50 l O .rodata 0000000000000013 __PRETTY_FUNCTION__.5
+00000000004639d0 l F .text 000000000000178d _dl_map_object_from_fd.constprop.0
+000000000049bd30 l O .rodata 0000000000000017 __PRETTY_FUNCTION__.1
+000000000048ae10 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.0
+0000000000465390 l F .text 000000000000017b expand_dynamic_string_token
+000000000049bd70 l O .rodata 000000000000001c __PRETTY_FUNCTION__.8
+0000000000465510 l F .text 0000000000000276 fillin_rpath.isra.0
+0000000000465790 l F .text 00000000000001c6 decompose_rpath
+000000000049bdc0 l O .rodata 0000000000000042 system_dirs
+000000000049bd18 l O .rodata 000000000000000f __PRETTY_FUNCTION__.9
+000000000048a978 l O .rodata 0000000000000004 dummy_bucket.6
+000000000049bd08 l O .rodata 000000000000000f __PRETTY_FUNCTION__.7
+000000000049bda0 l O .rodata 0000000000000010 expected.3
+0000000000000000 l df *ABS* 0000000000000000 dl-lookup.o
+0000000000466c30 l F .text 000000000000019c check_match
+000000000049c138 l O .rodata 000000000000000c __PRETTY_FUNCTION__.1
+0000000000466dd0 l F .text 0000000000000c2c do_lookup_x
+000000000049c150 l O .rodata 0000000000000014 __PRETTY_FUNCTION__.2
+0000000000000000 l df *ABS* 0000000000000000 dl-minimal-malloc.o
+00000000004bc838 l O .bss 0000000000000008 alloc_end
+00000000004bc840 l O .bss 0000000000000008 alloc_ptr
+00000000004bc830 l O .bss 0000000000000008 alloc_last_block
+000000000049c190 l O .rodata 0000000000000012 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-misc.o
+000000000049c1c0 l O .rodata 0000000000000078 primes.0
+0000000000000000 l df *ABS* 0000000000000000 dl-origin.o
+000000000049c288 l O .rodata 000000000000000f __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-printf.o
+0000000000468e20 l F .text 00000000000006fd _dl_debug_vdprintf
+000000000049c2f0 l O .rodata 0000000000000013 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-profile.o
+00000000004bc884 l O .bss 0000000000000004 running
+00000000004bc864 l O .bss 0000000000000004 fromlimit
+00000000004bc858 l O .bss 0000000000000008 lowpc
+00000000004bc850 l O .bss 0000000000000008 textsize
+00000000004bc848 l O .bss 0000000000000004 log_hashfraction
+00000000004bc878 l O .bss 0000000000000008 narcsp
+00000000004bc888 l O .bss 0000000000000008 data
+00000000004bc870 l O .bss 0000000000000008 tos
+00000000004bc860 l O .bss 0000000000000004 fromidx
+00000000004bc868 l O .bss 0000000000000008 froms
+00000000004bc880 l O .bss 0000000000000004 narcs
+0000000000000000 l df *ABS* 0000000000000000 dl-reloc.o
+000000000049c880 l O .rodata 000000000000003b errstring.1
+000000000049c820 l O .rodata 000000000000004c msg.0
+000000000049c800 l O .rodata 0000000000000020 CSWTCH.99
+000000000049c7e0 l O .rodata 0000000000000020 CSWTCH.100
+000000000049c800 l O .rodata 0000000000000020 CSWTCH.97
+000000000049c7e0 l O .rodata 0000000000000020 CSWTCH.98
+000000000049c8c0 l O .rodata 000000000000001a __PRETTY_FUNCTION__.2
+0000000000000000 l df *ABS* 0000000000000000 dl-setup_hash.o
+000000000049c920 l O .rodata 000000000000000f __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-cache.o
+00000000004bc8a0 l O .bss 0000000000000008 cache
+00000000004bc890 l O .bss 0000000000000008 cachesize
+00000000004bc898 l O .bss 0000000000000008 cache_new
+000000000049c990 l O .rodata 0000000000000016 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-libc.o
+000000000046daa0 l F .text 000000000000003e do_dlopen
+000000000046dae0 l F .text 0000000000000089 do_dlsym_private
+000000000046db70 l F .text 0000000000000039 do_dlsym
+000000000046dbb0 l F .text 000000000000003a do_dlvsym
+000000000046dbf0 l F .text 0000000000000009 do_dlclose
+0000000000485aa0 l F __libc_freeres_fn 0000000000000295 free_slotinfo
+0000000000485d40 l F __libc_freeres_fn 00000000000002ed free_mem
+00000000004b6af0 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 C-monetary.o
+0000000000488149 l O .rodata 0000000000000002 not_available
+000000000049c9c0 l O .rodata 0000000000000008 conversion_rate
+0000000000000000 l df *ABS* 0000000000000000 C-collate.o
+000000000049d5a0 l O .rodata 0000000000000100 collseqmb
+000000000049d180 l O .rodata 000000000000041c collseqwc
+0000000000000000 l df *ABS* 0000000000000000 reg-modifier.o
+0000000000486030 l F __libc_freeres_fn 0000000000000060 free_mem
+00000000004bc8b0 l O .bss 0000000000000004 next_bit
+00000000004bc8b4 l O .bss 0000000000000004 lock
+00000000004b6af8 l O __libc_subfreeres 0000000000000008 __elf_set___libc_subfreeres_element_free_mem__
+0000000000000000 l df *ABS* 0000000000000000 reg-printf.o
+00000000004bc8c0 l O .bss 0000000000000004 lock
+0000000000000000 l df *ABS* 0000000000000000 reg-type.o
+00000000004bc8c4 l O .bss 0000000000000004 lock
+00000000004b6aac l O .data 0000000000000004 pa_next_type
+0000000000000000 l df *ABS* 0000000000000000 vsnprintf.o
+0000000000473dd0 l F .text 0000000000000071 _IO_strn_overflow
+0000000000000000 l df *ABS* 0000000000000000 strspn.o
+0000000000474370 l F .text 000000000000001e strspn_ifunc
+0000000000000000 l df *ABS* 0000000000000000 wmemchr.o
+0000000000474650 l F .text 000000000000007d __wmemchr_ifunc
+0000000000000000 l df *ABS* 0000000000000000 wmemset.o
+00000000004746d0 l F .text 0000000000000066 __wmemset_ifunc
+0000000000000000 l df *ABS* 0000000000000000 profil.o
+00000000004756b0 l F .text 000000000000004a __profil_counter
+00000000004bc9a8 l O .bss 0000000000000008 pc_offset
+00000000004bc9a0 l O .bss 0000000000000004 pc_scale
+00000000004bc9b0 l O .bss 0000000000000008 nsamples
+00000000004bc9b8 l O .bss 0000000000000008 samples
+00000000004bc980 l O .bss 0000000000000020 otimer.0
+00000000004bc8e0 l O .bss 0000000000000098 oact.1
+0000000000000000 l df *ABS* 0000000000000000 dl-close.o
+00000000004758e0 l F .text 0000000000000075 call_destructors
+0000000000475960 l F .text 000000000000010e remove_slotinfo
+000000000049e860 l O .rodata 0000000000000010 __PRETTY_FUNCTION__.0
+0000000000475a70 l F .text 0000000000000d94 _dl_close_worker.part.0.isra.0
+00000000004bc9c0 l O .bss 0000000000000004 dl_close_state.2
+000000000049e870 l O .rodata 0000000000000011 __PRETTY_FUNCTION__.1
+0000000000000000 l df *ABS* 0000000000000000 dl-find_object.o
+0000000000476b20 l F .text 0000000000000069 _dl_find_object_from_map
+0000000000476b90 l F .text 0000000000000193 _dlfo_process_initial
+00000000004bc9e0 l O .bss 0000000000000010 _dlfo_loaded_mappings
+00000000004b4ea0 l O .data.rel.ro 0000000000000008 _dlfo_nodelete_mappings
+00000000004b4ea8 l O .data.rel.ro 0000000000000008 _dlfo_nodelete_mappings_size
+00000000004b4ec0 l O .data.rel.ro 0000000000000020 _dlfo_main
+00000000004bc9d0 l O .bss 0000000000000008 _dlfo_loaded_mappings_version
+00000000004b4eb0 l O .data.rel.ro 0000000000000008 _dlfo_nodelete_mappings_end
+000000000049e9a0 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.2
+000000000049e980 l O .rodata 0000000000000019 __PRETTY_FUNCTION__.1
+000000000049e960 l O .rodata 0000000000000020 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-open.o
+0000000000477a30 l F .text 0000000000000162 add_to_global_update
+000000000049ece0 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.0
+0000000000477ba0 l F .text 0000000000000017 call_dl_init
+0000000000477bc0 l F .text 00000000000000ec dl_open_worker
+0000000000478210 l F .text 0000000000000a4b dl_open_worker_begin
+0000000000477cb0 l F .text 000000000000001c add_to_global_resize_failure.isra.0
+0000000000477cd0 l F .text 0000000000000170 add_to_global_resize
+000000000049ed40 l O .rodata 0000000000000018 __PRETTY_FUNCTION__.5
+000000000049ecd0 l O .rodata 0000000000000009 __PRETTY_FUNCTION__.4
+000000000049ed20 l O .rodata 0000000000000015 __PRETTY_FUNCTION__.3
+000000000049ecc0 l O .rodata 000000000000000e __PRETTY_FUNCTION__.2
+000000000049ed00 l O .rodata 0000000000000014 __PRETTY_FUNCTION__.1
+0000000000000000 l df *ABS* 0000000000000000 dl-runtime.o
+000000000049eda0 l O .rodata 000000000000000a __PRETTY_FUNCTION__.1
+000000000049edb0 l O .rodata 0000000000000012 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-sort-maps.o
+0000000000479090 l F .text 00000000000000dc dfs_traversal.part.0
+000000000049ee00 l O .rodata 0000000000000012 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-version.o
+000000000049f010 l O .rodata 0000000000000017 __PRETTY_FUNCTION__.1
+000000000049eff8 l O .rodata 000000000000000d __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 rtld_static_init.o
+00000000004b4ee0 l O .data.rel.ro 0000000000000068 _dlfcn_hook
+000000000049f0d0 l O .rodata 0000000000000013 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dlinfo.o
+000000000047cc00 l F .text 00000000000000f7 dlinfo_doit
+0000000000000000 l df *ABS* 0000000000000000 dlmopen.o
+000000000047cd70 l F .text 0000000000000069 dlmopen_doit
+0000000000000000 l df *ABS* 0000000000000000 dlopen.o
+000000000047cec0 l F .text 000000000000007b dlopen_doit
+0000000000000000 l df *ABS* 0000000000000000 dlsym.o
+000000000047d000 l F .text 000000000000001e dlsym_doit
+0000000000000000 l df *ABS* 0000000000000000 dlvsym.o
+000000000047d120 l F .text 0000000000000022 dlvsym_doit
+0000000000000000 l df *ABS* 0000000000000000 dl-call-libc-early-init.o
+00000000004a2930 l O .rodata 0000000000000019 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-deps.o
+000000000047d380 l F .text 000000000000003b openaux
+00000000004a2ad0 l O .rodata 0000000000000014 __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-init.o
+000000000047e540 l F .text 00000000000000e8 call_init.part.0
+00000000004a2b60 l O .rodata 000000000000000a __PRETTY_FUNCTION__.0
+0000000000000000 l df *ABS* 0000000000000000 dl-sym.o
+000000000047ee40 l F .text 0000000000000033 call_dl_lookup
+0000000000000000 l df *ABS* 0000000000000000 crtstuff.c
+00000000004b039c l O .eh_frame 0000000000000000 __FRAME_END__
+0000000000000000 l df *ABS* 0000000000000000
+0000000000400000 l .note.gnu.property 0000000000000000 __ehdr_start
+0000000000400550 l .rela.plt 0000000000000000 __rela_iplt_end
+00000000004b17e0 l .fini_array 0000000000000000 __fini_array_end
+0000000000400310 l .rela.plt 0000000000000000 __rela_iplt_start
+00000000004b17d8 l .fini_array 0000000000000000 __fini_array_start
+00000000004a2ee8 l .eh_frame_hdr 0000000000000000 __GNU_EH_FRAME_HDR
+00000000004b17d8 l .init_array 0000000000000000 __init_array_end
+00000000004b17d0 l .tbss 0000000000000000 __preinit_array_end
+00000000004b4fe8 l O .got.plt 0000000000000000 _GLOBAL_OFFSET_TABLE_
+00000000004b17d0 l .init_array 0000000000000000 __init_array_start
+00000000004b17d0 l .tbss 0000000000000000 __preinit_array_start
+00000000004b18c0 g O .data.rel.ro 00000000000002e8 .hidden _nl_C_LC_CTYPE
+00000000004392f0 g F .text 0000000000000016 __stack_chk_fail_local
+0000000000435290 g F .text 000000000000018d .hidden __strcspn_generic
+000000000047fad0 g F .text 000000000000007d .hidden __sfp_handle_exceptions
+000000000041e580 w i .text 0000000000000071 stpcpy
+000000000048caa0 g O .rodata 000000000000004c .hidden _nl_C_LC_CTYPE_class_print
+00000000004379e0 w F .text 00000000000003bd tsearch
+00000000004b72e8 g O .bss 0000000000000008 .hidden __x86_shared_non_temporal_threshold
+00000000004321f0 g F .text 0000000000001859 .hidden __strncmp_sse2
+0000000000435dc0 w F .text 000000000000006a clock_gettime
+0000000000421140 g F .text 0000000000000031 .hidden __memmove_erms
+0000000000420150 g F .text 000000000000073f .hidden __memcpy_avx512_no_vzeroupper
+00000000004374f0 g F .text 000000000000004d .hidden __getdtablesize
+0000000000415ef0 g F .text 000000000000003c _IO_remove_marker
+000000000044b060 w F .text 000000000000001b secure_getenv
+000000000044ada0 g F .text 00000000000001d8 .hidden __libc_sigaction
+000000000041e800 g i .text 0000000000000071 .hidden strcpy
+0000000000459270 g F .text 0000000000000319 .hidden _IO_wdefault_xsgetn
+000000000046c580 g F .text 00000000000001af .hidden __thread_gscope_wait
+000000000047ee80 g F .text 0000000000000321 .hidden _dl_vsym
+000000000046c4b0 g F .text 00000000000000d0 .hidden _dl_setup_hash
+00000000004141a0 g F .text 00000000000001f9 .hidden _IO_link_in
+0000000000484390 g F .text 00000000000003ec .hidden _Unwind_Find_FDE
+000000000044b450 w F .text 00000000000000fd unsetenv
+0000000000469520 g F .text 00000000000000a6 .hidden _dl_debug_printf
+000000000040b890 w F .text 0000000000000031 gsignal
+0000000000415590 g F .text 000000000000007f .hidden _IO_sputbackc
+000000000048cce0 g O .rodata 0000000000000048 .hidden _nl_C_LC_CTYPE_class_upper
+0000000000415510 g F .text 0000000000000069 .hidden _IO_default_finish
+000000000045ba70 w i .text 0000000000000070 bcmp
+00000000004796c0 g F .text 0000000000000adf .hidden _dl_check_map_versions
+0000000000481f60 g F .text 000000000000001c .hidden _Unwind_GetIPInfo
+00000000004432c0 g F .text 0000000000001114 __gconv_transform_utf8_internal
+000000000042ab80 g F .text 000000000000023c .hidden __strchr_avx2
+00000000004bc588 g O .bss 0000000000000004 .hidden __libc_argc
+000000000044acb0 g F .text 0000000000000084 .hidden __longjmp
+0000000000413930 w F .text 000000000000009f .hidden _IO_file_finish
+000000000048c6e0 g O .rodata 000000000000005c .hidden _nl_C_LC_CTYPE_width
+000000000040e5f0 g F .text 0000000000000179 .hidden __fxprintf_nocancel
+00000000004373a0 w F .text 0000000000000032 getrlimit
+0000000000484d00 g F __libc_freeres_fn 00000000000000e5 .hidden _nl_unload_domain
+000000000047cd00 g F .text 0000000000000063 __dlinfo
+000000000047c840 w F .text 00000000000001b7 dlerror
+0000000000420140 g F .text 000000000000000d __memcpy_chk_avx512_no_vzeroupper
+0000000000481f50 g F .text 000000000000000c .hidden _Unwind_GetIP
+000000000045c280 w F .text 0000000000000075 strtok_r
+00000000004366d0 w F .text 0000000000000032 fstatat
+000000000047b4d0 g F .text 000000000000016c .hidden __mpn_impn_mul_n_basecase
+0000000000458df0 g F .text 000000000000009b .hidden _IO_wdoallocbuf
+000000000047cd00 w F .text 0000000000000063 dlinfo
+0000000000435e80 g F .text 000000000000000c .hidden __getpid
+0000000000473750 g F .text 0000000000000169 __register_printf_modifier
+0000000000416290 g F .text 000000000000004e .hidden _IO_list_lock
+0000000000435fc0 w F .text 0000000000000616 sysconf
+00000000004b56d0 g O .data 0000000000000008 stdout
+00000000004074c0 g F .text 00000000000015c5 .hidden _nl_load_domain
+0000000000417650 g F .text 00000000000003a6 ___pthread_rwlock_wrlock
+00000000004151f0 g F .text 000000000000006a .hidden _IO_default_doallocate
+00000000004374f0 w F .text 000000000000004d getdtablesize
+0000000000000058 g .tbss 0000000000000008 __libc_dlerror_result
+000000000040ddf0 w F .text 000000000000000e __strtoull_l
+0000000000461ad0 w F .text 00000000000000bf fdopendir
+000000000041fa40 g F .text 00000000000006df .hidden __memmove_avx_unaligned_erms_rtm
+0000000000416c90 g F .text 000000000000004d .hidden __libc_cleanup_push_defer
+00000000004125b0 g F .text 0000000000000314 _IO_new_file_xsputn
+000000000046a570 g F .text 00000000000000d4 .hidden _dl_reloc_bad_type
+0000000000458730 g F .text 0000000000000034 .hidden _IO_least_wmarker
+0000000000415500 g F .text 0000000000000007 _IO_default_sync
+0000000000421180 g F .text 000000000000000c .hidden __mempcpy_evex_unaligned
+0000000000484030 g F .text 000000000000002e .hidden __register_frame
+0000000000421190 g F .text 0000000000000038 .hidden __memmove_evex_unaligned
+0000000000413bd0 w F .text 00000000000000e1 .hidden _IO_file_sync
+00000000004260e0 g F .text 0000000000000010 __strcasecmp_avx2_rtm
+000000000040d950 g F .text 0000000000000014 __strtoull_internal
+00000000004740b0 g F .text 0000000000000025 .hidden __nptl_stack_list_del
+000000000047bb80 g F .text 000000000000015c .hidden __mpn_impn_sqr_n_basecase
+000000000045b020 g F .text 0000000000000015 .hidden __pthread_once
+000000000040ddf0 w F .text 000000000000000e strtoull_l
+000000000047d1d0 g F .text 0000000000000080 ___dlvsym
+00000000004597f0 g F .text 00000000000000a6 _IO_seekwmark
+000000000040e980 g F .text 00000000000000fb .hidden _IO_fflush
+000000000047c600 g F .text 00000000000000b9 .hidden __mpn_extract_long_double
+000000000045e800 g F .text 0000000000000218 .hidden __strnlen_sse2
+000000000043c7c0 g F .text 0000000000000089 .hidden _dl_tunable_set_x86_ibt
+00000000004b6c80 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_wfile_jumps
+000000000049d9a0 g O .rodata 0000000000000008 .hidden _sys_errlist_internal_len
+000000000048cb60 g O .rodata 000000000000004c .hidden _nl_C_LC_CTYPE_class_xdigit
+000000000045a4e0 g F .text 00000000000002d6 .hidden __pthread_mutex_lock
+0000000000411eb0 w F .text 000000000000009c _IO_file_write
+0000000000477e40 g F .text 00000000000000a0 _dl_find_dso_for_object
+00000000004683e0 g F .text 0000000000000119 .hidden __minimal_malloc
+000000000045d160 g F .text 00000000000003ff .hidden __memcmp_avx2_movbe
+00000000004172a0 w F .text 00000000000001d8 pthread_rwlock_rdlock
+000000000042b240 g F .text 000000000000022a .hidden __strchr_sse2
+0000000000438db0 g F .text 0000000000000051 .hidden __init_misc
+00000000004410f0 g F .text 0000000000000546 __gconv_transform_ascii_internal
+000000000047c3d0 g F .text 00000000000000ad .hidden __mpn_sub_n
+00000000004357e0 g F .text 0000000000000112 .hidden __wcsmbs_clone_conv
+000000000041bc60 g F .text 0000000000000033 __glibc_morecore
+000000000045c130 w F .text 0000000000000041 strndup
+0000000000461990 g F .text 0000000000000034 .hidden __getdents
+00000000004bc548 g O .bss 0000000000000008 .hidden _dl_profile_output
+000000000047a710 g F .text 0000000000000033 .hidden __mpn_cmp
+0000000000410a50 g F .text 0000000000000100 .hidden __libio_codecvt_length
+000000000045b870 w F .text 00000000000000b0 argz_add_sep
+0000000000461c20 g F .text 0000000000000025 .hidden __sched_get_priority_max
+000000000047f4a0 g F .text 00000000000000eb .hidden __mpn_addmul_1
+000000000045c180 g i .text 0000000000000078 .hidden __strnlen
+000000000043a0e0 g F .text 000000000000012c .hidden __tls_init_tp
+0000000000436670 w F .text 0000000000000016 stat64
+000000000043ce40 g F .text 000000000000021c .hidden __gconv
+000000000041e200 g i .text 00000000000000f6 .hidden memmove
+00000000004443e0 g F .text 000000000000088f __gconv_transform_ucs2_internal
+0000000000423b40 g F .text 0000000000000167 .hidden __rawmemchr_avx2
+00000000004bc8a8 g O .bss 0000000000000008 .hidden __printf_modifier_table
+0000000000417260 w F .text 000000000000003e pthread_rwlock_init
+0000000000461f40 g F .text 00000000000000b8 .hidden __tcgetattr
+00000000004689a0 g F .text 00000000000002e4 .hidden _dl_new_object
+0000000000453c70 g F .text 00000000000025bd .hidden __vfwprintf_internal
+0000000000482880 g F .text 000000000000011a .hidden _Unwind_Resume_or_Rethrow
+0000000000420150 g F .text 000000000000073f .hidden __memmove_avx512_no_vzeroupper
+0000000000437150 g F .text 00000000000000a8 .hidden __fcntl64_nocancel
+0000000000473ce0 w F .text 00000000000000b3 snprintf
+000000000041d1e0 g F .text 00000000000003c0 __calloc
+0000000000414d50 g F .text 000000000000033a .hidden _IO_default_xsgetn
+000000000045c280 g F .text 0000000000000075 .hidden __strtok_r
+0000000000462320 g F .text 00000000000000a0 _dl_exception_create
+00000000004375a0 w F .text 0000000000000025 munmap
+0000000000461b90 g F .text 0000000000000025 .hidden __sched_getparam
+00000000004b4a40 g O .data.rel.ro 0000000000000008 .hidden __libc_stack_end
+0000000000415380 g F .text 0000000000000039 .hidden _IO_enable_locks
+00000000004b72d0 g O .bss 0000000000000004 n
+0000000000422000 g F .text 0000000000000f3d .hidden __memcpy_ssse3
+0000000000461b90 w F .text 0000000000000025 sched_getparam
+000000000048be90 g O .rodata 0000000000000010 .hidden _nl_default_locale_path
+0000000000473a60 g F .text 00000000000000ca .hidden __register_printf_specifier
+00000000004b6130 g O .data 0000000000000004 .hidden _dl_debug_fd
+0000000000423840 g F .text 0000000000000148 .hidden __memset_evex_unaligned_erms
+00000000004b3220 g O .data.rel.ro 0000000000000070 .hidden _nl_C_LC_NAME
+0000000000434da0 g F .text 0000000000000493 .hidden __strstr_sse2_unaligned
+00000000004379e0 g F .text 00000000000003bd .hidden __tsearch
+000000000040d430 g F .text 0000000000000507 .hidden ____strtol_l_internal
+0000000000412480 g F .text 0000000000000124 _IO_file_seekoff_mmap
+0000000000409a10 g F .text 00000000000005a0 .hidden __gettext_free_exp
+000000000040b8d0 g F .text 0000000000000010 atol
+00000000004b50f8 g O .data 0000000000000008 .hidden __x86_data_cache_size_half
+000000000046d3a0 g F .text 0000000000000684 .hidden _dl_load_cache_lookup
+0000000000000002 g *ABS* 0000000000000000 _nl_current_LC_NUMERIC_used
+00000000004368e0 w F .text 000000000000009d .hidden __write
+000000000040ebc0 w F .text 00000000000000f0 _IO_fopen64
+0000000000410840 g F .text 00000000000000ec .hidden __libio_codecvt_out
+000000000040b710 g F .text 000000000000010b .hidden __gettext_extract_plural
+000000000041da10 w F .text 0000000000000217 malloc_stats
+0000000000414ce0 g F .text 000000000000006e .hidden _IO_sgetn
+0000000000437540 w F .text 0000000000000054 .hidden __mmap
+00000000004bc2b0 g O .bss 0000000000000010 .hidden _dl_stack_user
+00000000004375d0 g F .text 0000000000000025 .hidden __mprotect
+00000000004b7bb8 g O .bss 0000000000000008 _nl_domain_bindings
+000000000043af00 g F .text 00000000000000f4 .hidden _dl_catch_exception
+00000000004b6058 g O .data 0000000000000001 .hidden __libc_single_threaded
+00000000004bc5b0 g O .bss 0000000000000008 .hidden __gconv_path_envvar
+000000000041c260 g F .text 0000000000000244 .hidden __malloc_arena_thread_freeres
+0000000000421200 g F .text 00000000000007bb .hidden __memmove_evex_unaligned_erms
+000000000040d410 w F .text 0000000000000016 strtoimax
+0000000000481fa0 g F .text 000000000000000c .hidden _Unwind_GetRegionStart
+000000000044b080 g F .text 000000000000036e .hidden __add_to_environ
+00000000004b6160 g O .data 0000000000000010 .hidden _dl_initial_searchlist
+000000000040be40 g F .text 00000000000000cc .hidden getenv
+0000000000411650 g F .text 000000000000000c .hidden _IO_file_seek
+000000000045f5e0 w i .text 0000000000000070 wcslen
+0000000000456ef0 g F .text 0000000000000a49 .hidden __parse_one_specwc
+000000000046e050 g F .text 00000000000000e2 .hidden _itoa_word
+0000000000421110 g F .text 0000000000000011 .hidden __mempcpy_erms
+00000000004b72e0 g O .bss 0000000000000008 .hidden __x86_rep_movsb_stop_threshold
+0000000000000018 g .tbss 0000000000000004 errno
+0000000000417260 g F .text 000000000000003e .hidden __pthread_rwlock_init
+00000000004239c0 g F .text 0000000000000020 .hidden __wmemset_sse2_unaligned
+00000000004385e0 g F .text 00000000000001c5 .hidden __tdestroy
+000000000041e500 g i .text 000000000000007d .hidden __rawmemchr
+0000000000478e30 g F .text 000000000000025f _dl_profile_fixup
+00000000004369b0 g F .text 0000000000000769 .hidden __getcwd
+000000000042fbd0 g F .text 0000000000000433 .hidden __strcpy_evex
+000000000045c5a0 g F .text 00000000000002b8 .hidden __memchr_avx2_rtm
+00000000004829d0 g F .text 00000000000000f7 .hidden _Unwind_Backtrace
+0000000000435a50 g F .text 000000000000036a .hidden __mbsrtowcs_l
+0000000000434a30 g F .text 0000000000000362 .hidden __strstr_avx512
+0000000000429330 g F .text 0000000000001846 .hidden __strcasecmp_l_sse42
+0000000000415e00 g F .text 00000000000000e7 _IO_init_marker
+000000000045be70 w F .text 00000000000002bc .hidden memmem
+000000000040d3f0 g F .text 0000000000000014 .hidden __strtol_internal
+000000000045ce30 g F .text 0000000000000323 .hidden __memchr_sse2
+000000000048bda0 g O .rodata 000000000000000d .hidden _nl_category_name_idxs
+0000000000435420 w F .text 000000000000000d wmempcpy
+000000000045b550 g F .text 0000000000000136 .hidden __pthread_current_priority
+0000000000458b10 g F .text 0000000000000075 .hidden __woverflow
+00000000004b5320 g O .data 00000000000000e0 _IO_2_1_stdout_
+0000000000473b30 g F .text 00000000000000ca __register_printf_function
+000000000041f9d0 g F .text 0000000000000031 .hidden __memcpy_avx_unaligned_rtm
+000000000047c1a0 g F .text 000000000000011c __mpn_mul_n
+0000000000412db0 g F .text 0000000000000027 _IO_new_file_init
+00000000004374b0 w F .text 0000000000000031 getpagesize
+0000000000435e80 w F .text 000000000000000c getpid
+0000000000417650 g F .text 00000000000003a6 .hidden __pthread_rwlock_wrlock
+0000000000422000 g F .text 0000000000000f3d .hidden __memmove_ssse3
+0000000000447a20 g F .text 00000000000004d2 .hidden __gconv_lookup_cache
+0000000000468710 g F .text 000000000000004e .hidden _dl_higher_prime_number
+0000000000461ce0 g F .text 0000000000000128 .hidden __openat64
+000000000048c980 g O .rodata 000000000000004c .hidden _nl_C_LC_CTYPE_class_cntrl
+000000000040c710 g F .text 000000000000000c .hidden qsort
+000000000041ddb0 g F .text 000000000000030d __posix_memalign
+0000000000415be0 g F .text 0000000000000216 .hidden _IO_flush_all_linebuffered
+0000000000476950 g F .text 0000000000000181 .hidden _dl_make_stacks_executable
+0000000000416dc0 g F .text 0000000000000051 .hidden __lll_lock_wait
+000000000040e770 w F .text 0000000000000206 _IO_fclose
+00000000004bc598 g O .bss 0000000000000008 .hidden __gconv_modules_db
+000000000040d3f0 g F .text 0000000000000014 __strtoll_internal
+0000000000408fc0 g F .text 0000000000000194 _nl_expand_alias
+00000000004bc280 g O .bss 0000000000000004 .hidden _dl_stack_cache_lock
+000000000040fe50 g F .text 00000000000001cf .hidden _IO_wdo_write
+000000000047ce50 w F .text 0000000000000065 dlmopen
+0000000000457e00 g F .text 00000000000002a8 .hidden __getdelim
+0000000000436840 w F .text 000000000000009d .hidden __read
+0000000000416fb0 g F .text 000000000000014a .hidden __pthread_kill_internal
+00000000004b6080 g O .data 0000000000000028 .hidden _dl_load_tls_lock
+0000000000473f90 g F .text 0000000000000029 .hidden __pthread_cleanup_pop
+000000000045ffa0 g F .text 0000000000000020 __wcschrnul
+0000000000473f90 w F .text 0000000000000029 _pthread_cleanup_pop
+0000000000468760 g F .text 000000000000019a .hidden _dl_strtoul
+0000000000414a70 g F .text 000000000000000a _IO_default_underflow
+000000000046e2e0 w F .text 0000000000000035 _IO_funlockfile
+0000000000423cc0 g F .text 0000000000000168 .hidden __rawmemchr_avx2_rtm
+000000000045ef60 g F .text 00000000000002e1 .hidden __strrchr_evex
+00000000004373a0 w F .text 0000000000000032 .hidden getrlimit64
+000000000047e630 g F .text 000000000000018c .hidden _dl_init
+0000000000447780 g F .text 00000000000001fc .hidden __gconv_load_cache
+000000000041d9a0 g F .text 0000000000000070 __mallinfo
+0000000000440920 g F .text 00000000000007ca __gconv_transform_ucs4le_internal
+00000000004bc568 g O .bss 0000000000000008 .hidden _dl_platformlen
+00000000004b7320 g O .bss 0000000000000008 _dl_tls_static_used
+0000000000458f10 g F .text 0000000000000072 .hidden _IO_switch_to_wget_mode
+00000000004b50d0 g O .data 0000000000000008 .hidden __x86_rep_stosb_threshold
+0000000000481ef0 g F .text 000000000000000c .hidden _Unwind_GetCFA
+00000000004b5108 g O .data 0000000000000008 .hidden __exit_funcs
+000000000040aec0 g F .text 0000000000000845 .hidden __gettextparse
+000000000041e100 w i .text 00000000000000f6 memcpy
+000000000047d2c0 w F .text 000000000000002a setitimer
+0000000000414ae0 g F .text 00000000000001fb .hidden _IO_default_xsputn
+000000000047add0 g F .text 0000000000000113 .hidden __mpn_lshift
+0000000000421140 g F .text 0000000000000031 .hidden __memcpy_erms
+0000000000423770 g F .text 000000000000000d __memset_chk_erms
+00000000004b6ab8 g O __libc_subfreeres 0000000000000000 .hidden __TMC_END__
+0000000000449fe0 g F .text 0000000000000394 .hidden _nl_load_locale
+000000000042bfc0 g F .text 0000000000000555 .hidden __strcmp_avx2
+00000000004714e0 g F .text 000000000000001d ___printf_fp
+0000000000457c70 g F .text 000000000000018e .hidden _IO_fwrite
+0000000000415090 g F .text 00000000000000e4 _IO_default_setbuf
+0000000000468580 g F .text 000000000000008a .hidden __minimal_realloc
+0000000000415610 g F .text 000000000000006f _IO_sungetc
+000000000046a350 g F .text 00000000000000e6 .hidden _dl_try_allocate_static_tls
+0000000000473da0 g F .text 0000000000000022 .hidden __get_errlist
+000000000047d020 g F .text 0000000000000078 __dlsym
+0000000000447770 g F .text 000000000000000c __gconv_get_cache
+0000000000459b50 g F .text 000000000000008c .hidden __futex_abstimed_wait64
+000000000047a5a0 g F .text 000000000000007b .hidden _dl_addr_inside_object
+0000000000447fb0 g F .text 00000000000001dc .hidden __gconv_find_shlib
+00000000004106c0 g F .text 0000000000000175 _IO_fwide
+0000000000459d80 g F .text 000000000000005f .hidden __pthread_tunables_init
+0000000000421a00 g F .text 000000000000000c .hidden __mempcpy_sse2_unaligned_erms
+000000000040d940 w F .text 000000000000000e strtoll_l
+000000000044a380 g F .text 000000000000006e .hidden _nl_unload_locale
+00000000004130f0 g F .text 000000000000015a _IO_new_file_close_it
+00000000004bc564 g O .bss 0000000000000004 .hidden _dl_debug_mask
+0000000000410020 g F .text 00000000000002b3 .hidden _IO_wfile_overflow
+000000000041c960 g F .text 00000000000002b8 .hidden __libc_memalign
+000000000045b740 g F .text 00000000000000a5 .hidden __libc_scratch_buffer_set_array_size
+0000000000435240 g F .text 0000000000000043 __strcasecmp_l_nonascii
+000000000046dcb0 g F .text 00000000000000c9 __libc_dlsym_private
+0000000000414530 g F .text 0000000000000070 .hidden __overflow
+000000000045ffc0 g F .text 00000000000001e5 .hidden __wcslen_avx2
+000000000041fa40 g F .text 00000000000006df .hidden __memcpy_avx_unaligned_erms_rtm
+0000000000424360 g F .text 00000000000003ac .hidden __stpcpy_avx2
+000000000047aef0 g F .text 00000000000004b9 .hidden __mpn_mul
+000000000045f670 g F .text 00000000000001bb .hidden __btowc
+0000000000473e50 g F .text 00000000000000fe .hidden __vsnprintf_internal
+0000000000488280 g O .rodata 0000000000000118 .hidden __strtol_ul_max_tab
+000000000041fa10 g F .text 000000000000000c .hidden __mempcpy_avx_unaligned_erms_rtm
+000000000043b1e0 g F .text 0000000000000b2d .hidden _dl_non_dynamic_init
+000000000040b9f0 g F .text 00000000000000e5 .hidden __internal_atexit
+0000000000461910 w F .text 0000000000000076 rewinddir
+000000000046ca10 g F .text 00000000000000bd .hidden _dl_runtime_resolve_xsavec
+000000000041c960 g F .text 00000000000002b8 __memalign
+000000000042b7a0 g F .text 00000000000001e4 .hidden __strchrnul_avx2
+000000000047c480 g F .text 00000000000000eb .hidden __mpn_submul_1
+0000000000411290 g F .text 000000000000000c .hidden _IO_file_close
+000000000045b040 g F .text 00000000000000e4 .hidden __pthread_sigmask
+000000000041d5a0 g F .text 0000000000000298 __malloc_trim
+000000000047c7e0 g F .text 000000000000000d __dladdr
+00000000004b5100 g O .data 0000000000000008 .hidden _nl_current_default_domain
+00000000004b7c80 g O .bss 0000000000000004 _nl_msg_cat_cntr
+000000000041be50 g F .text 000000000000030c .hidden malloc
+000000000047f780 g F .text 0000000000000348 .hidden __letf2
+000000000045ecc0 g F .text 0000000000000298 .hidden __strrchr_avx2_rtm
+0000000000436710 g F .text 0000000000000128 .hidden __open
+0000000000416030 g F .text 000000000000005b .hidden _IO_unsave_markers
+0000000000436670 g F .text 0000000000000016 __stat
+000000000048dd40 g O .rodata 0000000000000300 .hidden _nl_C_LC_CTYPE_class
+0000000000461e10 w F .text 0000000000000042 isatty
+00000000004b6140 g O .data 0000000000000008 .hidden _dl_load_adds
+00000000004b17e0 g O .data.rel.ro 0000000000000020 .hidden __gettext_germanic_plural
+0000000000477060 g F .text 00000000000000a5 _dlfo_sort_mappings
+0000000000435460 g F .text 0000000000000079 .hidden __wcsmbs_getfct
+00000000004b5500 g O .data 00000000000000e0 _IO_2_1_stdin_
+000000000043f590 g F .text 00000000000005fc __gconv_transform_internal_ucs4
+0000000000436610 g F .text 0000000000000056 .hidden __get_child_max
+0000000000430100 g F .text 0000000000000623 .hidden __strcpy_sse2_unaligned
+000000000046a500 g F .text 0000000000000065 .hidden _dl_protect_relro
+0000000000469880 g F .text 00000000000000a6 .hidden _dl_fatal_printf
+0000000000461ce0 w F .text 0000000000000128 openat64
+0000000000461bc0 w F .text 0000000000000025 sched_setscheduler
+0000000000433a50 g F .text 0000000000000fd9 .hidden __strncmp_sse42
+000000000045b7f0 g F .text 0000000000000072 .hidden __strerror_r
+000000000040e140 g F .text 00000000000000b7 .hidden __asprintf
+00000000004bc2a0 g O .bss 0000000000000010 .hidden _dl_stack_cache
+0000000000473fc0 g F .text 00000000000000b7 .hidden __lll_lock_elision
+000000000045f670 w F .text 00000000000001bb btowc
+00000000004354e0 g F .text 00000000000002fc .hidden __wcsmbs_load_conv
+0000000000438eb0 w F .text 0000000000000025 sysinfo
+00000000004b7268 g __libc_IO_vtables 0000000000000000 .protected __stop___libc_IO_vtables
+0000000000473f50 w F .text 000000000000000c vsnprintf
+000000000040d410 w F .text 0000000000000016 strtoll
+0000000000474740 g F .text 00000000000002ba .hidden __wmemchr_avx2
+000000000047bce0 g F .text 00000000000004bf .hidden __mpn_impn_sqr_n
+000000000045e540 g F .text 00000000000002be .hidden __strnlen_evex
+0000000000473750 w F .text 0000000000000169 register_printf_modifier
+00000000004b32a0 g O .data.rel.ro 00000000000000a0 .hidden _nl_C_LC_ADDRESS
+000000000043b070 g F .text 0000000000000010 _dl_mcount_wrapper
+0000000000439d50 g F .text 0000000000000087 _dl_deallocate_tls
+000000000040d970 w F .text 0000000000000016 strtoumax
+000000000048ca40 g O .rodata 000000000000004c .hidden _nl_C_LC_CTYPE_class_graph
+000000000047b640 g F .text 0000000000000536 .hidden __mpn_impn_mul_n
+000000000044ab20 g F .text 000000000000001b .hidden __current_locale_name
+00000000004256e0 g F .text 00000000000009f2 .hidden __strcasecmp_l_avx2
+00000000004172a0 g F .text 00000000000001d8 .hidden __pthread_rwlock_rdlock
+000000000047cfa0 g F .text 0000000000000060 ___dlopen
+0000000000438b70 g F .text 000000000000007a .hidden __get_nprocs_sched
+00000000004bc550 g O .bss 0000000000000008 .hidden _dl_profile
+000000000048cd40 g O .rodata 0000000000000600 .hidden _nl_C_LC_CTYPE_tolower
+000000000040d970 w F .text 0000000000000016 .hidden strtoul
+00000000004b50c8 g O .data 0000000000000000 .hidden __dso_handle
+0000000000474330 g F .text 000000000000003c .hidden __strsep
+00000000004219d0 g F .text 000000000000002c .hidden __memmove_sse2_unaligned
+0000000000461bf0 w F .text 0000000000000025 sched_getscheduler
+00000000004366d0 g F .text 0000000000000032 __fstatat
+000000000040b8e0 g F .text 000000000000010e .hidden __new_exitfn
+0000000000469720 g F .text 00000000000000a2 .hidden _dl_printf
+0000000000416c40 g F .text 0000000000000048 .hidden __libc_alloca_cutoff
+0000000000416e60 g F .text 0000000000000143 .hidden __nptl_deallocate_tsd
+0000000000438f90 g F .text 00000000000000c8 .hidden __malloc_thp_mode
+0000000000458770 g F .text 000000000000003b .hidden _IO_switch_to_main_wget_area
+0000000000405c60 g F .text 0000000000000013 .hidden __dcgettext
+0000000000468500 g F .text 0000000000000038 .hidden __minimal_calloc
+0000000000000002 g *ABS* 0000000000000000 _nl_current_LC_CTYPE_used
+0000000000417480 w F .text 00000000000001cb pthread_rwlock_unlock
+00000000004172a0 g F .text 00000000000001d8 ___pthread_rwlock_rdlock
+0000000000416b70 g F .text 00000000000000ab _IO_str_init_readonly
+00000000004118d0 w F .text 00000000000005c6 .hidden _IO_file_seekoff
+00000000004615a0 g F .text 0000000000000042 .hidden _nl_cleanup_time
+000000000043ae50 g F .text 000000000000004c .hidden _dl_signal_exception
+00000000004396a0 g F .text 0000000000000065 .hidden _dl_count_modids
+00000000004b7d08 g O .bss 0000000000000004 __exit_funcs_lock
+000000000041f9c0 g F .text 000000000000000c .hidden __mempcpy_avx_unaligned_rtm
+0000000000482000 g F .text 0000000000000114 .hidden __frame_state_for
+00000000004619d0 w F .text 00000000000000f8 readdir
+000000000043acb0 g F .text 000000000000006d .hidden __tunable_get_val
+00000000004b6ab0 g O .data 0000000000000008 .hidden __nptl_stack_cache_maxsize
+00000000004596f0 g F .text 0000000000000033 _IO_adjust_wcolumn
+000000000043a450 g F .text 0000000000000745 .hidden __tunables_init
+000000000043bd20 g F .text 0000000000000005 .hidden _dl_audit_pltexit
+000000000040d950 g F .text 0000000000000014 .hidden __strtoul_internal
+000000000041cee0 w F .text 00000000000002f3 pvalloc
+0000000000416730 g F .text 0000000000000290 .hidden _IO_str_seekoff
+000000000044aba0 g F .text 0000000000000054 .hidden __ctype_init
+0000000000410930 g F .text 00000000000000ec .hidden __libio_codecvt_in
+0000000000417480 g F .text 00000000000001cb .hidden __pthread_rwlock_unlock
+00000000004b7308 g O .bss 0000000000000008 _dl_tls_static_optional
+0000000000436980 g F .text 000000000000002c __lseek64
+00000000004112a0 w F .text 000000000000002c .hidden _IO_file_setbuf
+0000000000413250 g F .text 00000000000006dd _IO_new_file_fopen
+000000000041e300 w i .text 00000000000000f6 mempcpy
+000000000041d9a0 g F .text 0000000000000070 __libc_mallinfo
+000000000041f240 g F .text 000000000000000c .hidden __mempcpy_avx_unaligned
+000000000040e980 w F .text 00000000000000fb .hidden fflush
+0000000000474080 g F .text 0000000000000029 .hidden __lll_unlock_elision
+000000000040ebc0 g F .text 00000000000000f0 _IO_new_fopen
+0000000000417a10 g F .text 00000000000000b9 .hidden __pthread_setcancelstate
+00000000004bc210 w O .bss 0000000000000008 _environ
+000000000043f570 g F .text 0000000000000014 __gconv_btwoc_ascii
+000000000045f5e0 g i .text 0000000000000070 __wcslen
+0000000000416220 g F .text 0000000000000007 _IO_default_write
+0000000000436840 g F .text 000000000000009d .hidden __libc_read
+000000000040e480 g F .text 0000000000000169 .hidden __fxprintf
+00000000004b71c0 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_strn_jumps
+000000000047c7e0 w F .text 000000000000000d dladdr
+000000000043dfb0 g F .text 000000000000028c .hidden __gconv_find_transform
+0000000000484930 g F .text 00000000000002af .hidden __gcc_personality_v0
+0000000000430ce0 g F .text 000000000000019c .hidden __strlen_sse2
+000000000047a620 g F .text 00000000000000e6 .hidden __rtld_static_init
+0000000000411620 g F .text 0000000000000029 _IO_file_close_mmap
+0000000000421fc0 g F .text 000000000000000c .hidden __mempcpy_ssse3
+0000000000439730 g F .text 00000000000000bc .hidden _dl_allocate_tls_storage
+0000000000436980 w F .text 000000000000002c lseek
+000000000041c4b0 g F .text 00000000000004a2 .hidden __libc_realloc
+000000000045f650 w F .text 000000000000000d wmemcpy
+0000000000000040 g .tbss 0000000000000008 __libc_tsd_CTYPE_TOLOWER
+0000000000445a20 g F .text 00000000000008d5 __gconv_transform_ucs2reverse_internal
+000000000044b550 w F .text 000000000000008e clearenv
+00000000004b7318 g O .bss 0000000000000008 .hidden _dl_tls_static_align
+000000000046c3f0 g F .text 00000000000000ba .hidden _dl_scope_free
+000000000045e240 g F .text 00000000000002fc .hidden __strnlen_avx2_rtm
+00000000004bc210 g O .bss 0000000000000008 .hidden __environ
+0000000000461330 g F .text 000000000000022c .hidden __wcsnlen_sse4_1
+0000000000421200 g F .text 00000000000007bb .hidden __memcpy_evex_unaligned_erms
+0000000000437540 w F .text 0000000000000054 mmap
+0000000000435e30 w F .text 0000000000000050 _Exit
+00000000004b6a90 g O .data 0000000000000010 .hidden __elision_aconf
+000000000047d0a0 g F .text 000000000000007b ___dlsym
+000000000040d940 w F .text 000000000000000e strtol_l
+0000000000449a50 g F .text 0000000000000581 .hidden _nl_intern_locale_data
+000000000045d980 g F .text 00000000000002ff .hidden __memcmp_evex_movbe
+00000000004744b0 g F .text 0000000000000195 .hidden __strspn_generic
+00000000004741e0 g F .text 000000000000010f .hidden __nptl_deallocate_stack
+0000000000467a00 g F .text 00000000000009d1 .hidden _dl_lookup_symbol_x
+000000000042bba0 g F .text 0000000000000207 .hidden __strchrnul_evex
+000000000047c820 w F .text 0000000000000020 dlclose
+0000000000435a00 g F .text 000000000000004a .hidden _nl_cleanup_ctype
+00000000004b7348 g O .bss 0000000000000008 _dl_tls_max_dtv_idx
+000000000042b000 g F .text 000000000000023e .hidden __strchr_evex
+000000000047c6c0 g F .text 000000000000011f .hidden __mpn_extract_float128
+000000000048c800 g O .rodata 00000000000000a8 .hidden _nl_C_LC_CTYPE_map_toupper
+000000000048c920 g O .rodata 000000000000004c .hidden _nl_C_LC_CTYPE_class_punct
+0000000000402019 g F .text 0000000000000195 .hidden abort
+00000000004bc600 g O .bss 0000000000000038 .hidden __libc_setlocale_lock
+0000000000402430 g F .text 0000000000000005 .hidden _dl_relocate_static_pie
+000000000044ac70 g F .text 0000000000000034 __sigjmp_save
+00000000004b6aa8 g O .data 0000000000000004 .hidden __sched_fifo_min_prio
+00000000004392f0 g F .text 0000000000000016 __stack_chk_fail
+0000000000461cc0 g F .text 0000000000000019 .hidden __lstat64
+0000000000476880 g F .text 00000000000000cc .hidden _dl_close
+0000000000421a40 g F .text 0000000000000552 .hidden __memmove_sse2_unaligned_erms
+00000000004b7360 g O .bss 0000000000000400 _dl_static_dtv
+00000000004714e0 g F .text 000000000000001d .hidden __printf_fp
+00000000004bc528 g O .bss 0000000000000004 .hidden _dl_bind_not
+00000000004b66e8 g O .data 0000000000000004 .hidden __libc_enable_secure
+00000000004583a0 g F .text 0000000000000137 _IO_wpadn
+000000000044aaa0 g F .text 000000000000007a _nl_postload_ctype
+000000000047f590 g F .text 00000000000001eb .hidden __unordtf2
+0000000000436690 w F .text 0000000000000034 fstat64
+0000000000437e00 w F .text 000000000000066c tdelete
+0000000000457ab0 g F .text 0000000000000126 .hidden _IO_fputs
+000000000043fb90 g F .text 00000000000007ba __gconv_transform_ucs4_internal
+0000000000437290 g F .text 00000000000000a8 .hidden __open_nocancel
+00000000004bc2f8 g O .bss 0000000000000008 .hidden _dl_auxv
+0000000000401000 g F .init 0000000000000000 .hidden _init
+000000000046de40 g F .text 0000000000000179 .hidden __libc_dlvsym
+0000000000460920 g F .text 0000000000000364 .hidden __wcsnlen_avx2
+000000000048cbc0 g O .rodata 0000000000000044 .hidden _nl_C_LC_CTYPE_class_digit
+0000000000423fc0 g F .text 000000000000018a .hidden __rawmemchr_evex_rtm
+00000000004169c0 g F .text 000000000000001e .hidden _IO_str_pbackfail
+0000000000410480 g F .text 000000000000023d .hidden _IO_wfile_xsputn
+00000000004b3ac8 g O .data.rel.ro 0000000000000008 __rseq_offset
+00000000004bc5b8 g O .bss 0000000000000008 __gconv_max_path_elem_len
+0000000000416240 g F .text 0000000000000005 _IO_default_imbue
+000000000047a750 g F .text 000000000000067e .hidden __mpn_divrem
+000000000040d410 w F .text 0000000000000016 strtoq
+00000000004b4a68 g O .data.rel.ro 0000000000000008 .hidden _dl_vdso_clock_gettime64
+000000000040d410 w F .text 0000000000000016 .hidden strtol
+000000000044ac00 g F .text 0000000000000067 .hidden __sigsetjmp
+0000000000436980 g F .text 000000000000002c __libc_lseek64
+000000000047cde0 g F .text 0000000000000065 __dlmopen
+0000000000430e80 g F .text 000000000000064e .hidden __strncmp_avx2
+000000000045c180 w i .text 0000000000000078 strnlen
+000000000048adc0 g O .rodata 0000000000000024 .hidden _dl_x86_platforms
+000000000041e500 w i .text 000000000000007d rawmemchr
+0000000000422fc0 g F .text 000000000000013d .hidden __memset_avx2_unaligned_erms
+0000000000437200 g F .text 0000000000000088 .hidden __fcntl64_nocancel_adjusted
+0000000000407240 g F .text 0000000000000277 .hidden _nl_find_domain
+000000000047e7c0 g F .text 00000000000002ff .hidden _dl_lookup_direct
+0000000000436670 g F .text 0000000000000016 .hidden __stat64
+0000000000416210 g F .text 000000000000000c _IO_default_read
+0000000000416e40 g F .text 0000000000000018 .hidden __lll_lock_wake
+0000000000484190 g F .text 000000000000009c .hidden __register_frame_table
+00000000004564b0 g F .text 0000000000000033 .hidden __get_errname
+00000000004130f0 w F .text 000000000000015a .hidden _IO_file_close_it
+0000000000404290 g F .text 0000000000001378 .hidden __libc_start_main_impl
+00000000004bc7e0 g O .bss 0000000000000038 .hidden __default_pthread_attr
+000000000043c850 g F .text 0000000000000089 .hidden _dl_tunable_set_x86_shstk
+00000000004bc570 g O .bss 0000000000000008 .hidden _dl_platform
+0000000000474120 g F .text 00000000000000b1 .hidden __nptl_free_stacks
+0000000000416250 g F .text 000000000000000c .hidden _IO_iter_begin
+000000000048d940 g O .rodata 0000000000000400 .hidden _nl_C_LC_CTYPE_class32
+0000000000417a10 w F .text 00000000000000b9 pthread_setcancelstate
+0000000000439710 g F .text 0000000000000019 _dl_get_tls_static_info
+000000000045c200 g i .text 0000000000000078 .hidden strrchr
+00000000004485d0 g F .text 000000000000001a .hidden __gconv_destroy_spec
+00000000004bc524 g O .bss 0000000000000004 .hidden _dl_x86_feature_1
+000000000044ab80 g F .text 0000000000000015 __ctype_tolower_loc
+000000000040d410 g F .text 0000000000000016 __strtol
+0000000000405610 g F .text 000000000000019f .hidden __libc_check_standard_fds
+000000000041d1e0 w F .text 00000000000003c0 calloc
+00000000004b7268 g __libc_atexit 0000000000000000 .protected __start___libc_atexit
+000000000047d2c0 g F .text 000000000000002a .hidden __setitimer
+000000000041e600 w i .text 0000000000000080 strcasecmp_l
+00000000004627c0 g F .text 0000000000000022 _dl_exception_free
+0000000000411ea0 g F .text 000000000000000c .hidden _IO_file_stat
+0000000000402282 g F .text 000000000000000c _dl_start
+000000000045ad50 g F .text 0000000000000115 .hidden __pthread_mutex_unlock
+000000000041d840 w F .text 0000000000000033 malloc_usable_size
+00000000004385e0 w F .text 00000000000001c5 tdestroy
+0000000000483ec0 g F .text 00000000000000a9 .hidden __register_frame_info_bases
+00000000004102e0 g F .text 0000000000000194 .hidden _IO_wfile_sync
+000000000041cee0 g F .text 00000000000002f3 __libc_pvalloc
+000000000040d940 w F .text 000000000000000e __strtoll_l
+0000000000416e20 g F .text 0000000000000019 .hidden __lll_lock_wake_private
+000000000043a090 g F .text 000000000000004a .hidden __tls_pre_init_tp
+000000000047a240 g F .text 0000000000000360 .hidden _dl_cet_open_check
+0000000000424150 g F .text 0000000000000209 .hidden __rawmemchr_sse2
+0000000000461bf0 g F .text 0000000000000025 .hidden __sched_getscheduler
+000000000045c200 w i .text 0000000000000078 rindex
+00000000004620e0 g F .text 00000000000001f4 .hidden __readonly_area
+0000000000420940 g F .text 00000000000007c0 .hidden __memmove_avx512_unaligned_erms
+000000000043a310 g F .text 0000000000000131 .hidden __tunable_set_val
+00000000004208d0 g F .text 000000000000003b .hidden __memmove_avx512_unaligned
+0000000000471500 g F .text 000000000000004e .hidden __guess_grouping
+00000000004697d0 g F .text 00000000000000a2 .hidden _dl_error_printf
+00000000004368e0 w F .text 000000000000009d .hidden write
+000000000047c7f0 w F .text 0000000000000027 dladdr1
+0000000000474650 w i .text 000000000000007d wmemchr
+000000000041ee70 g F .text 0000000000000364 .hidden __strstr_generic
+000000000041cc20 g F .text 00000000000002b8 __libc_valloc
+000000000048c740 g O .rodata 00000000000000a8 .hidden _nl_C_LC_CTYPE_map_tolower
+000000000045f250 g F .text 000000000000029d .hidden __strrchr_sse2
+00000000004603c0 g F .text 000000000000017c .hidden __wcslen_evex
+00000000004856c0 g F __libc_freeres_fn 0000000000000213 .hidden _nl_locale_subfreeres
+00000000004bc210 w O .bss 0000000000000008 environ
+00000000004bc340 g O .bss 00000000000001e0 .hidden _dl_x86_cpu_features
+00000000004069b0 g F .text 0000000000000881 .hidden __dcigettext
+0000000000436690 w F .text 0000000000000034 fstat
+000000000044b5e0 g F .text 00000000000000b7 .hidden fprintf
+0000000000468900 g F .text 0000000000000095 .hidden _dl_add_to_namespace_list
+00000000004b6f80 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_str_jumps
+00000000004169e0 g F .text 0000000000000037 _IO_str_finish
+00000000004260f0 g F .text 0000000000000a02 .hidden __strcasecmp_l_avx2_rtm
+00000000004237e0 g F .text 0000000000000030 .hidden __memset_evex_unaligned
+0000000000409720 g F .text 0000000000000107 _nl_normalize_codeset
+00000000004b8130 g O .bss 0000000000000001 .hidden __exit_funcs_done
+0000000000405c60 w F .text 0000000000000013 dcgettext
+00000000004b7328 g O .bss 0000000000000008 .hidden _dl_tls_static_size
+00000000004695d0 g F .text 00000000000000a6 .hidden _dl_debug_printf_c
+0000000000416230 g F .text 000000000000000a _IO_default_showmanyc
+0000000000438bf0 g F .text 000000000000003d .hidden __get_nprocs
+0000000000461e10 g F .text 0000000000000042 .hidden __isatty
+00000000004b7b80 g O .bss 0000000000000038 .hidden _nl_state_lock
+00000000004758d0 g F .text 000000000000000b .hidden __profile_frequency
+00000000004bc560 g O .bss 0000000000000004 .hidden _dl_lazy
+0000000000439340 g F .text 0000000000000005 _dl_debug_state
+00000000004a2ee4 w .stapsdt.base 0000000000000001 .hidden _.stapsdt.base
+0000000000441640 g F .text 0000000000000d27 __gconv_transform_internal_ascii
+000000000041e580 g i .text 0000000000000071 __stpcpy
+0000000000437540 g F .text 0000000000000054 .hidden __mmap64
+000000000046e750 g F .text 0000000000002d81 .hidden __printf_fp_l
+0000000000422f40 g F .text 0000000000000025 .hidden __wmemset_avx2_unaligned
+000000000045b020 w F .text 0000000000000015 pthread_once
+00000000004163a0 g F .text 00000000000001c8 .hidden _IO_str_overflow
+0000000000484350 g F .text 0000000000000009 .hidden __deregister_frame_info
+0000000000437600 w F .text 0000000000000025 madvise
+000000000042cfe0 g F .text 0000000000001449 .hidden __strcmp_sse2
+000000000041be50 g F .text 000000000000030c __malloc
+0000000000461e60 g F .text 00000000000000a0 .hidden __openat64_nocancel
+0000000000465960 g F .text 00000000000003c4 .hidden _dl_init_paths
+000000000041bca0 g F .text 000000000000007e .hidden __malloc_fork_lock_parent
+000000000041f9d0 g F .text 0000000000000031 .hidden __memmove_avx_unaligned_rtm
+00000000004601c0 g F .text 00000000000001ee .hidden __wcslen_avx2_rtm
+0000000000412270 g F .text 000000000000020f .hidden _IO_file_xsgetn
+0000000000415940 g F .text 0000000000000285 _IO_cleanup
+000000000040b820 g F .text 0000000000000051 .hidden __hash_string
+00000000004b4a38 g O .data.rel.ro 0000000000000008 .hidden _dl_argv
+0000000000415180 g F .text 000000000000006e _IO_default_seekpos
+000000000046cad0 g F .text 00000000000003fd .hidden _dl_runtime_profile_avx512
+000000000043c9f0 g F .text 0000000000000443 .hidden __gconv_open
+000000000041c160 g F .text 00000000000000ff __free
+00000000004826b0 g F .text 00000000000001cf .hidden _Unwind_Resume
+000000000047c820 g F .text 0000000000000020 __dlclose
+00000000004829a0 g F .text 0000000000000021 .hidden _Unwind_DeleteException
+0000000000444c70 g F .text 0000000000000da1 __gconv_transform_internal_ucs2
+0000000000438e10 w F .text 0000000000000092 mremap
+00000000004373a0 g F .text 0000000000000032 .hidden __getrlimit
+0000000000412f70 g F .text 0000000000000172 _IO_new_do_write
+0000000000000000 g .tdata 0000000000000008 .hidden _nl_current_LC_CTYPE
+00000000004619d0 g F .text 00000000000000f8 .hidden __readdir64
+0000000000476ae0 g F .text 0000000000000040 __nptl_change_stack_perm
+0000000000411350 w F .text 00000000000002c8 .hidden _IO_file_underflow
+0000000000457e00 w F .text 00000000000002a8 getdelim
+0000000000448190 g F .text 000000000000001a .hidden __gconv_release_shlib
+00000000004b2a40 g O .data.rel.ro 00000000000001a8 .hidden _nl_C_LC_MONETARY
+0000000000437340 g F .text 000000000000002c .hidden __read_nocancel
+0000000000409160 g F .text 00000000000005bc _nl_make_l10nflist
+00000000004bc520 g O .bss 0000000000000004 .hidden _dl_x86_feature_control
+000000000040ead0 g F .text 00000000000000ee .hidden __fopen_internal
+0000000000415430 g F .text 00000000000000c7 _IO_no_init
+000000000041e6f0 g i .text 0000000000000078 __strchrnul
+00000000004779c0 g F .text 0000000000000069 .hidden _dl_find_object_freeres
+000000000041d880 g F .text 000000000000011f __mallinfo2
+0000000000458260 g F .text 0000000000000137 .hidden _IO_padn
+00000000004139d0 w F .text 00000000000001f8 .hidden _IO_file_overflow
+0000000000465d30 g F .text 0000000000000067 _dl_process_pt_gnu_property
+000000000045b9f0 g i .text 000000000000007d .hidden memchr
+0000000000431b60 g F .text 000000000000068e .hidden __strncmp_evex
+00000000004580b0 g F .text 000000000000019d .hidden _IO_getline_info
+00000000004392d0 g F .text 0000000000000016 .hidden __chk_fail
+00000000004256d0 g F .text 0000000000000010 __strcasecmp_avx2
+00000000004619d0 g F .text 00000000000000f8 __readdir
+00000000004564f0 g F .text 00000000000009f7 .hidden __parse_one_specmb
+00000000004b56d8 g O .data 0000000000000008 stdin
+0000000000437da0 w F .text 000000000000005a tfind
+0000000000420940 g F .text 00000000000007c0 .hidden __memcpy_avx512_unaligned_erms
+00000000004b6aa4 g O .data 0000000000000004 .hidden __sched_fifo_max_prio
+0000000000436710 g F .text 0000000000000128 __libc_open64
+0000000000416ac0 g F .text 00000000000000ab _IO_str_init_static
+0000000000465210 g F .text 0000000000000180 .hidden _dl_dst_substitute
+000000000049f100 g O .rodata 0000000000000168 .hidden _fpioconst_pow10
+00000000004b7338 g O .bss 0000000000000008 _dl_tls_dtv_slotinfo_list
+000000000042ca80 g F .text 0000000000000556 .hidden __strcmp_evex
+00000000004397f0 g F .text 0000000000000291 _dl_allocate_tls_init
+0000000000474a00 g F .text 00000000000002cb .hidden __wmemchr_avx2_rtm
+000000000043d060 g F .text 000000000000006e .hidden __gconv_close
+000000000045fa40 g F .text 00000000000001f6 .hidden __wcrtomb
+0000000000475310 g F .text 0000000000000393 .hidden __wmemchr_sse2
+00000000004b6060 g O .data 0000000000000008 .hidden __progname
+00000000004bc268 g O .bss 0000000000000008 .hidden _dl_sysinfo_map
+0000000000402400 g F .text 0000000000000026 _start
+0000000000461cc0 w F .text 0000000000000019 lstat
+0000000000484230 g F .text 000000000000011a .hidden __deregister_frame_info_bases
+00000000004b7270 g __libc_atexit 0000000000000000 .protected __stop___libc_atexit
+0000000000415bd0 g F .text 000000000000000e .hidden _IO_flush_all
+000000000041f1e0 g i .text 0000000000000048 .hidden strstr
+000000000040e770 g F .text 0000000000000206 _IO_new_fclose
+0000000000416280 g F .text 0000000000000008 .hidden _IO_iter_file
+0000000000461020 g F .text 0000000000000301 .hidden __wcsnlen_evex
+00000000004156b0 g F .text 0000000000000287 _IO_flush_all_lockp
+0000000000415680 g F .text 000000000000002f .hidden _IO_adjust_column
+0000000000417100 w F .text 000000000000015a pthread_kill
+0000000000000018 g .tbss 0000000000000004 .hidden __libc_errno
+0000000000459a50 g F .text 000000000000000e _dl_tunable_set_elision_skip_trylock_internal_abort
+000000000040de00 g F .text 000000000000033a .hidden __correctly_grouped_prefixmb
+000000000047f780 g F .text 0000000000000348 .hidden __lttf2
+00000000004b4a50 g O .data.rel.ro 0000000000000008 .hidden _dl_vdso_getcpu
+000000000043c9b0 g F .text 000000000000003a .hidden __libc_init_first
+0000000000411170 g F .text 000000000000001c .hidden _IO_vtable_check
+0000000000436840 w F .text 000000000000009d .hidden read
+00000000004bc318 g O .bss 0000000000000004 .hidden _dl_inhibit_cache
+0000000000420140 g F .text 000000000000000d __memmove_chk_avx512_no_vzeroupper
+000000000045c880 g F .text 00000000000002ba .hidden __memchr_evex
+0000000000410cf0 g F .text 000000000000000b __vasprintf
+000000000047c570 g F .text 0000000000000090 .hidden __mpn_extract_double
+00000000004373a0 g F .text 0000000000000032 __GI___getrlimit
+000000000041e960 g i .text 0000000000000080 .hidden strncmp
+00000000004b34c0 g O .data.rel.ro 00000000000000d0 .hidden _nl_C_LC_COLLATE
+000000000047cfa0 w F .text 0000000000000060 dlopen
+000000000044b5e0 w F .text 00000000000000b7 _IO_fprintf
+0000000000410a20 g F .text 0000000000000027 .hidden __libio_codecvt_encoding
+00000000004778e0 g F .text 00000000000000d1 .hidden _dl_find_object_dlclose
+0000000000409830 g F .text 00000000000001df _nl_explode_name
+0000000000458e90 g F .text 000000000000007a .hidden _IO_wdefault_doallocate
+000000000045fc40 w F .text 00000000000002e6 wcsrtombs
+0000000000461990 w F .text 0000000000000034 getdents64
+000000000040bbc0 g F .text 000000000000025e .hidden __run_exit_handlers
+000000000041be50 g F .text 000000000000030c .hidden __libc_malloc
+00000000004b50f0 g O .data 0000000000000008 .hidden __x86_data_cache_size
+0000000000417650 w F .text 00000000000003a6 pthread_rwlock_wrlock
+0000000000421130 g F .text 000000000000000d __memcpy_chk_erms
+0000000000424ad0 g F .text 0000000000000447 .hidden __stpcpy_evex
+00000000004746d0 w i .text 0000000000000066 wmemset
+0000000000438d00 w F .text 000000000000008b get_avphys_pages
+000000000041bda0 g F .text 00000000000000b0 .hidden __malloc_fork_unlock_child
+0000000000415f40 g F .text 0000000000000037 _IO_marker_delta
+000000000041c160 g F .text 00000000000000ff .hidden __libc_free
+0000000000421100 g F .text 000000000000000d __mempcpy_chk_erms
+000000000044b3f0 w F .text 0000000000000058 setenv
+0000000000412af0 g F .text 000000000000028f _IO_file_underflow_mmap
+000000000046c940 g F .text 00000000000000cd .hidden _dl_runtime_resolve_xsave
+0000000000459670 g F .text 0000000000000077 _IO_sungetwc
+00000000004b6060 w O .data 0000000000000008 program_invocation_short_name
+0000000000461700 g F .text 000000000000010f .hidden __opendir
+0000000000477110 g F .text 00000000000002af .hidden _dl_find_object_init
+0000000000416c20 g F .text 0000000000000018 _IO_str_count
+0000000000461c20 w F .text 0000000000000025 sched_get_priority_max
+00000000004bca90 g O __libc_freeres_ptrs 0000000000000008 .hidden __printf_arginfo_table
+0000000000473f50 g F .text 000000000000000c ___vsnprintf
+000000000046e2e0 w F .text 0000000000000035 funlockfile
+0000000000477ee0 g F .text 00000000000001cc .hidden _dl_open
+00000000004128f0 g F .text 00000000000001fc _IO_file_underflow_maybe_mmap
+0000000000460540 g F .text 000000000000023e .hidden __wcslen_sse2
+00000000004219c0 g F .text 000000000000000c .hidden __mempcpy_sse2_unaligned
+0000000000459a40 g F .text 000000000000000e _dl_tunable_set_elision_retry_try_xbegin
+000000000041cee0 g F .text 00000000000002f3 __pvalloc
+000000000045b040 w F .text 00000000000000e4 pthread_sigmask
+000000000040e3b0 g F .text 00000000000000c3 .hidden __vfxprintf
+000000000041c4b0 g F .text 00000000000004a2 realloc
+000000000048cb00 g O .rodata 0000000000000044 .hidden _nl_C_LC_CTYPE_class_space
+000000000041f1e0 g i .text 0000000000000048 __libc_strstr
+00000000004b6b00 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_wfile_jumps_maybe_mmap
+000000000047a1a0 g F .text 000000000000007f .hidden _dl_check_all_versions
+00000000004393a0 g F .text 0000000000000092 .hidden _dl_debug_initialize
+000000000045b920 g F .text 00000000000000c8 .hidden __argz_create_sep
+000000000041e8a0 g F .text 000000000000003d .hidden __strdup
+00000000004b7340 g O .bss 0000000000000001 _dl_tls_dtv_gaps
+000000000041f250 g F .text 0000000000000033 .hidden __memcpy_avx_unaligned
+000000000043d0d0 g F .text 000000000000000f .hidden __gconv_alias_compare
+000000000040bae0 g F .text 00000000000000db .hidden __cxa_atexit
+000000000045f660 g F .text 000000000000000d .hidden __wmemmove
+00000000004125b0 w F .text 0000000000000314 .hidden _IO_file_xsputn
+00000000004373e0 g F .text 0000000000000034 .hidden __brk
+00000000004b6b00 g __libc_IO_vtables 0000000000000000 .protected __start___libc_IO_vtables
+00000000004619d0 w F .text 00000000000000f8 readdir64
+00000000004b4d00 g O .data.rel.ro 0000000000000068 .hidden _nl_C
+00000000004597a0 g F .text 0000000000000044 _IO_wmarker_delta
+00000000004bc2d8 g O .bss 0000000000000008 .hidden _dl_hwcap2
+00000000004373a0 g F .text 0000000000000032 __GI_getrlimit
+0000000000473a60 w F .text 00000000000000ca register_printf_specifier
+000000000045ff30 w i .text 0000000000000070 wcsnlen
+000000000041dc30 g F .text 0000000000000172 .hidden __libc_mallopt
+000000000045f830 g F .text 000000000000020f .hidden __wcrtomb_internal
+0000000000462090 w F .text 000000000000004d towctrans
+0000000000473f60 g F .text 0000000000000022 .hidden __pthread_cleanup_push
+0000000000416200 g F .text 000000000000000a _IO_default_stat
+0000000000413bd0 g F .text 00000000000000e1 _IO_new_file_sync
+000000000045ba70 g i .text 0000000000000070 memcmp
+0000000000461bc0 g F .text 0000000000000025 .hidden __sched_setscheduler
+00000000004b6d40 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_file_jumps_maybe_mmap
+0000000000461c50 w F .text 0000000000000025 sched_get_priority_min
+0000000000475700 g F .text 00000000000001cf .hidden __profil
+000000000047f3f0 g F .text 00000000000000ad .hidden __mpn_add_n
+000000000041d5a0 w F .text 0000000000000298 malloc_trim
+00000000004bc290 g O .bss 0000000000000008 .hidden _dl_stack_cache_actsize
+0000000000000010 g .tdata 0000000000000008 .hidden _nl_current_LC_NUMERIC
+000000000040d990 g F .text 000000000000045e .hidden ____strtoul_l_internal
+000000000048d340 g O .rodata 0000000000000600 .hidden _nl_C_LC_CTYPE_toupper
+0000000000482130 g F .text 000000000000039f .hidden _Unwind_RaiseException
+00000000004365e0 g F .text 0000000000000025 .hidden __sched_yield
+0000000000461cc0 w F .text 0000000000000019 lstat64
+000000000041e600 g i .text 0000000000000080 .hidden __strcasecmp_l
+000000000049d7c0 g O .rodata 0000000000000090 .hidden _itowa_lower_digits
+0000000000415f30 g F .text 000000000000000b _IO_marker_difference
+0000000000422f70 g F .text 000000000000002e .hidden __memset_avx2_unaligned
+0000000000468c90 g F .text 0000000000000182 .hidden _dl_get_origin
+000000000044ad40 w F .text 0000000000000034 sigaction
+00000000004bc2f0 g O .bss 0000000000000008 .hidden _dl_phdr
+0000000000459590 g F .text 0000000000000060 .hidden _IO_free_wbackup_area
+00000000004686a0 g F .text 0000000000000061 .hidden _dl_name_match_p
+0000000000459a60 g F .text 0000000000000023 _dl_tunable_set_elision_enable
+00000000004499f0 g F .text 0000000000000051 .hidden _nl_remove_locale
+00000000004374b0 g F .text 0000000000000031 .hidden __getpagesize
+00000000004237c0 g F .text 000000000000001d .hidden __wmemset_evex_unaligned
+0000000000423780 g F .text 000000000000001d .hidden __memset_erms
+000000000047cf40 g F .text 000000000000005b __dlopen
+00000000004144e0 g F .text 0000000000000047 .hidden _IO_free_backup_area
+00000000004314d0 g F .text 000000000000067e .hidden __strncmp_avx2_rtm
+00000000004b2c80 g O .data.rel.ro 0000000000000530 .hidden _nl_C_LC_TIME
+0000000000438520 w F .text 00000000000000b5 twalk_r
+0000000000412db0 w F .text 0000000000000027 _IO_file_init
+0000000000420120 g F .text 000000000000000d __mempcpy_chk_avx512_no_vzeroupper
+000000000047d0a0 w F .text 000000000000007b dlsym
+0000000000437420 w F .text 000000000000008c .hidden sbrk
+000000000049d6a0 g O .rodata 0000000000000024 .hidden _itoa_lower_digits
+000000000041e8a0 w F .text 000000000000003d strdup
+00000000004b4d80 g O .data.rel.ro 00000000000000e8 .hidden _nl_C_locobj
+00000000004145a0 g F .text 00000000000001ca .hidden __underflow
+00000000004373a0 g F .text 0000000000000032 .hidden __getrlimit64
+000000000043f360 g F .text 0000000000000203 .hidden __gconv_get_builtin_trans
+00000000004b6148 g O .data 0000000000000008 .hidden _dl_nns
+00000000004b50e0 g O .data 0000000000000008 .hidden __x86_shared_cache_size
+0000000000481f80 g F .text 000000000000000c .hidden _Unwind_SetIP
+0000000000461910 g F .text 0000000000000076 .hidden __rewinddir
+00000000004b4a30 g O .data.rel.ro 0000000000000008 .hidden _dl_random
+00000000004b7cd0 g O .bss 0000000000000008 .hidden __abort_msg
+000000000047a220 g F .text 000000000000001d .hidden _dl_unmap
+000000000042f490 g F .text 0000000000000388 .hidden __strcpy_avx2
+00000000004bc278 g O .bss 0000000000000008 .hidden _dl_scope_free_list
+00000000004235a0 g F .text 0000000000000033 .hidden __memset_avx512_unaligned
+0000000000438c30 g F .text 000000000000003d .hidden __get_nprocs_conf
+0000000000430860 g F .text 0000000000000172 .hidden __strlen_avx2
+000000000043de50 g F .text 000000000000007e .hidden __gconv_release_step
+000000000040d970 w F .text 0000000000000016 strtoull
+000000000041e680 w i .text 0000000000000070 index
+000000000043aba0 g F .text 0000000000000103 .hidden __tunables_print
+0000000000474650 g i .text 000000000000007d .hidden __wmemchr
+0000000000459a30 g F .text 000000000000000e _dl_tunable_set_elision_skip_lock_internal_abort
+0000000000403000 g F .text 0000000000000011 correct
+0000000000426b00 g F .text 0000000000000010 __strcasecmp_evex
+000000000040ebc0 w F .text 00000000000000f0 fopen
+00000000004b7270 g .bss 0000000000000000 __bss_start
+0000000000438520 g F .text 00000000000000b5 .hidden __twalk_r
+0000000000436710 g F .text 0000000000000128 .hidden __libc_open
+0000000000458b90 g F .text 000000000000025b .hidden _IO_wdefault_xsputn
+0000000000442370 g F .text 0000000000000f4b __gconv_transform_internal_utf8
+0000000000414a80 g F .text 000000000000005f .hidden _IO_default_uflow
+000000000041e400 g i .text 00000000000000f1 .hidden memset
+00000000004bc288 g O .bss 0000000000000008 .hidden _dl_in_flight_stack
+0000000000435420 g F .text 000000000000000d .hidden __wmempcpy
+000000000040d940 w F .text 000000000000000e .hidden __strtol_l
+0000000000459a20 g F .text 000000000000000e _dl_tunable_set_elision_skip_lock_busy
+0000000000402528 g F .text 0000000000000016 main
+0000000000426b10 g F .text 0000000000000a10 .hidden __strcasecmp_l_evex
+0000000000469930 g F .text 00000000000007c2 .hidden _dl_start_profile
+00000000004bc530 g O .bss 0000000000000008 .hidden _dl_origin_path
+000000000045ff30 g i .text 0000000000000070 __wcsnlen
+000000000041e0c0 g F .text 000000000000003a __malloc_info
+00000000004b1800 g O .data.rel.ro 0000000000000020 .hidden __wcsmbs_gconv_fcts_c
+0000000000461f00 g F .text 0000000000000034 .hidden __pread64_nocancel
+0000000000413930 g F .text 000000000000009f _IO_new_file_finish
+000000000047d2f0 g F .text 0000000000000083 .hidden _dl_call_libc_early_init
+00000000004b7300 g O .bss 0000000000000008 _dl_tls_generation
+00000000004bc590 g O .bss 0000000000000004 .hidden __gconv_lock
+0000000000438c70 w F .text 000000000000008b get_phys_pages
+0000000000461c80 g F .text 000000000000003f .hidden __sched_cpucount
+000000000041d880 w F .text 000000000000011f mallinfo2
+0000000000435430 w F .text 0000000000000022 mbsrtowcs
+0000000000412ec0 g F .text 00000000000000af _IO_new_file_attach
+00000000004b56e0 g O .data 0000000000000004 .hidden __nptl_nthreads
+0000000000489ea0 g O .rodata 000000000000001f .hidden ___m128i_shift_right
+000000000041dc30 w F .text 0000000000000172 mallopt
+0000000000420130 g F .text 000000000000000c .hidden __mempcpy_avx512_no_vzeroupper
+000000000040e770 w F .text 0000000000000206 fclose
+0000000000439310 g F .text 000000000000002c .hidden __fortify_fail
+00000000004bc260 g O .bss 0000000000000004 .hidden _dl_clktck
+000000000046d2c0 g F .text 00000000000000d5 .hidden _dl_cache_libcmp
+0000000000436710 w F .text 0000000000000128 open64
+00000000004b4e70 g O .data.rel.ro 0000000000000010 .hidden __rtld_search_dirs
+000000000046a650 g F .text 0000000000001da0 .hidden _dl_relocate_object
+000000000041e0c0 w F .text 000000000000003a malloc_info
+0000000000461f40 w F .text 00000000000000b8 tcgetattr
+00000000004bc55c g O .bss 0000000000000004 .hidden _dl_dynamic_weak
+0000000000461700 w F .text 000000000000010f opendir
+0000000000459100 g F .text 000000000000016a .hidden __wunderflow
+0000000000414770 g F .text 00000000000001da .hidden __uflow
+0000000000484060 g F .text 000000000000008c .hidden __register_frame_info_table_bases
+00000000004208c0 g F .text 000000000000000c .hidden __mempcpy_avx512_unaligned
+0000000000465160 g F .text 00000000000000a5 .hidden _dl_dst_count
+0000000000405c10 g F .text 0000000000000046 .hidden __assert_fail
+000000000041f290 g F .text 000000000000000c .hidden __mempcpy_avx_unaligned_erms
+000000000048ae90 g O .rodata 0000000000000002 .hidden _nl_C_name
+00000000004143a0 g F .text 000000000000002c _IO_least_marker
+0000000000405ef0 g F .text 0000000000000aba .hidden _nl_find_msg
+00000000004587b0 g F .text 0000000000000036 .hidden _IO_switch_to_wbackup_area
+0000000000416320 g F .text 000000000000001b .hidden _IO_list_resetlock
+000000000048adf0 g O .rodata 000000000000001b .hidden _dl_x86_hwcap_flags
+000000000045ffa0 w F .text 0000000000000020 wcschrnul
+0000000000411190 g F .text 0000000000000090 .hidden __fgets_unlocked
+000000000043c8e0 g F .text 00000000000000ce .hidden __libc_early_init
+000000000045be70 g F .text 00000000000002bc .hidden __memmem
+000000000047d150 g F .text 000000000000007d __dlvsym
+0000000000436980 w F .text 000000000000002c .hidden __lseek
+00000000004875a0 g O .rodata 0000000000000012 .hidden _nl_default_dirname
+000000000048758b g O .rodata 0000000000000006 .hidden _nl_POSIX_name
+0000000000438470 g F .text 00000000000000aa .hidden __twalk
+0000000000458250 g F .text 000000000000000c .hidden _IO_getline
+000000000043ad20 g F .text 000000000000007c .hidden _dl_early_allocate
+000000000046a440 g F .text 00000000000000ba .hidden _dl_allocate_static_tls
+000000000041d880 g F .text 000000000000011f .hidden __libc_mallinfo2
+000000000041e770 g i .text 0000000000000088 .hidden strcmp
+0000000000458aa0 g F .text 000000000000006f .hidden _IO_wdefault_uflow
+000000000047c2c0 g F .text 0000000000000103 .hidden __mpn_rshift
+00000000004b33a0 g O .data.rel.ro 0000000000000048 .hidden _nl_C_LC_MEASUREMENT
+00000000004211d0 g F .text 000000000000000c .hidden __mempcpy_evex_unaligned_erms
+000000000043de40 g F .text 000000000000000c __gconv_get_alias_db
+000000000045ad50 w F .text 0000000000000115 pthread_mutex_unlock
+00000000004b50c0 w .data 0000000000000000 data_start
+000000000045b690 g F .text 00000000000000ad .hidden __libc_scratch_buffer_grow_preserve
+0000000000449150 g F .text 0000000000000894 .hidden _nl_find_locale
+0000000000427530 g F .text 0000000000001de6 .hidden __strcasecmp_l_sse2
+000000000045b9f0 g i .text 000000000000007d __memchr
+0000000000420910 g F .text 000000000000000c .hidden __mempcpy_avx512_unaligned_erms
+0000000000473b30 w F .text 00000000000000ca register_printf_function
+0000000000435430 g F .text 0000000000000022 .hidden __mbsrtowcs
+00000000004bc8b8 g O .bss 0000000000000008 .hidden __printf_function_table
+000000000040ddf0 w F .text 000000000000000e strtoul_l
+000000000040ea80 g F .text 0000000000000042 .hidden __fopen_maybe_mmap
+0000000000466960 g F .text 00000000000002c3 _dl_rtld_di_serinfo
+00000000004369b0 w F .text 0000000000000769 getcwd
+0000000000461ce0 g F .text 0000000000000128 __libc_openat64
+00000000004bc270 g O .bss 0000000000000008 .hidden _dl_sysinfo_dso
+00000000004746d0 g i .text 0000000000000066 .hidden __wmemset
+00000000004b3340 g O .data.rel.ro 0000000000000060 .hidden _nl_C_LC_TELEPHONE
+000000000048c8c0 g O .rodata 000000000000004c .hidden _nl_C_LC_CTYPE_class_alnum
+0000000000484360 g F .text 0000000000000025 .hidden __deregister_frame
+0000000000414950 g F .text 0000000000000059 .hidden _IO_setb
+000000000041f250 g F .text 0000000000000033 .hidden __memmove_avx_unaligned
+0000000000486090 g F .fini 0000000000000000 .hidden _fini
+0000000000473c00 g F .text 00000000000000e0 __register_printf_type
+0000000000413250 w F .text 00000000000006dd .hidden _IO_file_fopen
+00000000004791a0 g F .text 000000000000051f .hidden _dl_sort_maps
+00000000004366d0 w F .text 0000000000000032 fstatat64
+0000000000437370 g F .text 000000000000002c .hidden __write_nocancel
+000000000047c7f0 g F .text 0000000000000027 __dladdr1
+0000000000425010 g F .text 00000000000006b7 .hidden __stpcpy_sse2_unaligned
+000000000040c330 g F .text 00000000000003de .hidden __qsort_r
+000000000041c960 w F .text 00000000000002b8 memalign
+0000000000417480 g F .text 00000000000001cb ___pthread_rwlock_unlock
+000000000041e300 g i .text 00000000000000f6 __mempcpy
+000000000046da30 g F .text 0000000000000040 .hidden _dl_unload_cache
+000000000040d430 g F .text 0000000000000507 ____strtoll_l_internal
+000000000040e140 w F .text 00000000000000b7 asprintf
+0000000000430730 g F .text 000000000000011b .hidden __strcspn_sse42
+00000000004112a0 g F .text 000000000000002c _IO_new_file_setbuf
+000000000045b7f0 w F .text 0000000000000072 strerror_r
+0000000000423100 g F .text 0000000000000025 .hidden __wmemset_avx2_unaligned_rtm
+000000000040f3e0 g F .text 00000000000008c1 .hidden _IO_wfile_seekoff
+000000000040ecb0 g F .text 000000000000063f .hidden _IO_wfile_underflow
+00000000004bc320 g O .bss 0000000000000008 .hidden _dl_minsigstacksize
+0000000000437600 g F .text 0000000000000025 .hidden __madvise
+000000000045dc80 g F .text 00000000000002d0 .hidden __memcmp_sse2
+0000000000459a90 g F .text 00000000000000b1 .hidden __lll_elision_init
+000000000045fc40 g F .text 00000000000002e6 .hidden __wcsrtombs
+0000000000457940 g F .text 0000000000000167 .hidden _IO_file_doallocate
+000000000041e880 g i .text 000000000000001e .hidden strcspn
+0000000000447980 g F .text 0000000000000098 .hidden __gconv_compare_alias_cache
+000000000049a464 g O .rodata 0000000000000005 .hidden _libc_intl_domainname
+00000000004bc5c0 g O .bss 0000000000000008 __gconv_path_elem
+000000000049f280 g O .rodata 00000000000035e8 .hidden __tens
+0000000000459730 g F .text 000000000000006c _IO_init_wmarker
+00000000004488b0 g F .text 0000000000000899 .hidden setlocale
+00000000004b7310 g O .bss 0000000000000008 _dl_tls_static_surplus
+0000000000000050 g .tbss 0000000000000008 __libc_tsd_CTYPE_B
+00000000004b81b0 g O .bss 0000000000000004 .hidden __pthread_force_elision
+0000000000438d90 g F .text 0000000000000015 .hidden __getclktck
+0000000000481ff0 g F .text 000000000000000c .hidden _Unwind_GetTextRelBase
+00000000004128d0 g F .text 000000000000001d .hidden _IO_file_read
+000000000042f820 g F .text 00000000000003a9 .hidden __strcpy_avx2_rtm
+00000000004b56c8 g O .data 0000000000000008 stderr
+0000000000460780 g F .text 00000000000001a0 .hidden __wcslen_sse4_1
+00000000004232c0 g F .text 000000000000000d __memset_chk_avx512_no_vzeroupper
+0000000000438ee0 g F .text 00000000000000a8 .hidden __malloc_default_thp_pagesize
+0000000000437540 w F .text 0000000000000054 mmap64
+00000000004742f0 g F .text 0000000000000034 .hidden __pthread_get_minstack
+000000000048c9e0 g O .rodata 0000000000000044 .hidden _nl_C_LC_CTYPE_class_blank
+0000000000430b60 g F .text 0000000000000174 .hidden __strlen_evex
+0000000000436690 g F .text 0000000000000034 .hidden __fstat64
+00000000004057b0 g F .text 000000000000030e .hidden __libc_setup_tls
+00000000004b6ec0 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_file_jumps
+000000000046ced0 g F .text 00000000000003ef .hidden _dl_runtime_profile_avx
+000000000040e140 g F .text 00000000000000b7 ___asprintf
+0000000000475700 w F .text 00000000000001cf profil
+0000000000474330 w F .text 000000000000003c strsep
+0000000000437120 g F .text 000000000000002a .hidden __close_nocancel
+0000000000461560 g F .text 0000000000000038 .hidden __wcsnlen_generic
+0000000000439f60 g F .text 000000000000012c .hidden _dl_init_static_tls
+0000000000423180 g F .text 000000000000013d .hidden __memset_avx2_unaligned_erms_rtm
+00000000004b7d00 g O .bss 0000000000000008 .hidden __new_exitfn_called
+0000000000481fb0 g F .text 0000000000000023 .hidden _Unwind_FindEnclosingFunction
+0000000000474330 g F .text 000000000000003c .hidden __strsep_g
+000000000041cc20 w F .text 00000000000002b8 valloc
+0000000000416a20 g F .text 000000000000009b _IO_str_init_static_internal
+0000000000484ca0 g F __libc_freeres_fn 0000000000000051 .hidden _nl_finddomain_subfreeres
+0000000000462000 g F .text 0000000000000085 __wctrans
+00000000004b6128 g O .data 0000000000000004 .hidden _dl_stack_flags
+000000000048bd88 g O .rodata 000000000000000d .hidden _nl_category_name_sizes
+000000000041e100 g i .text 00000000000000f6 __new_memcpy
+000000000047d1d0 w F .text 0000000000000080 dlvsym
+000000000046a100 g F .text 000000000000024f _dl_mcount
+0000000000436980 g F .text 000000000000002c __libc_lseek
+00000000004738c0 g F .text 00000000000000c5 .hidden __handle_registered_modifier_mb
+0000000000421130 g F .text 000000000000000d __memmove_chk_erms
+000000000040ebc0 w F .text 00000000000000f0 _IO_fopen
+0000000000458a20 g F .text 000000000000007e .hidden _IO_wdefault_finish
+000000000043b080 g F .text 0000000000000021 .hidden _dl_mcount_wrapper_check
+0000000000473c00 w F .text 00000000000000e0 register_printf_type
+0000000000411eb0 g F .text 000000000000009c _IO_new_file_write
+000000000041d9a0 w F .text 0000000000000070 mallinfo
+000000000044ab40 g F .text 0000000000000015 __ctype_b_loc
+000000000045a4e0 g F .text 00000000000002d6 ___pthread_mutex_lock
+0000000000438e10 g F .text 0000000000000092 .hidden __mremap
+0000000000468540 g F .text 000000000000003c .hidden __minimal_free
+0000000000471550 g F .text 00000000000021f9 .hidden __printf_fphex
+0000000000481f90 g F .text 000000000000000c .hidden _Unwind_GetLanguageSpecificData
+000000000045c130 g F .text 0000000000000041 .hidden __strndup
+000000000048a978 g O .rodata 0000000000000004 __rseq_flags
+0000000000473f60 w F .text 0000000000000022 _pthread_cleanup_push
+0000000000417a00 w F .text 000000000000000e pthread_self
+00000000004bc308 g O .bss 0000000000000008 .hidden _dl_init_all_dirs
+0000000000424f20 g F .text 00000000000000ec .hidden __stpcpy_sse2
+0000000000439a90 g F .text 00000000000002b8 _dl_allocate_tls
+00000000004b7330 g O .bss 0000000000000008 _dl_tls_static_nelem
+00000000004bc7a8 g O .bss 0000000000000008 .hidden __fork_generation
+000000000043de30 g F .text 000000000000000c __gconv_get_modules_db
+00000000004595f0 g F .text 000000000000007f .hidden _IO_sputbackwc
+00000000004615f0 g F .text 000000000000010f .hidden __opendirat
+000000000046dfc0 g F .text 0000000000000085 .hidden __libc_dlclose
+0000000000438470 w F .text 00000000000000aa twalk
+000000000043f340 g F .text 0000000000000017 .hidden __gconv_load_conf
+000000000046c8c0 g F .text 000000000000007f .hidden _dl_runtime_resolve_fxsave
+000000000043e240 g F .text 0000000000000111 .hidden __gconv_close_transform
+0000000000439350 g F .text 0000000000000048 .hidden _dl_debug_update
+0000000000439060 g F .text 0000000000000265 .hidden __malloc_hugepage_config
+0000000000439de0 g F .text 000000000000007d .hidden _dl_tls_get_addr_soft
+00000000004239e0 g F .text 0000000000000035 .hidden __memset_sse2_unaligned
+0000000000412ec0 w F .text 00000000000000af .hidden _IO_file_attach
+000000000045b920 w F .text 00000000000000c8 argz_create_sep
+0000000000475000 g F .text 000000000000030a .hidden __wmemchr_evex_rtm
+000000000044b060 g F .text 000000000000001b .hidden __libc_secure_getenv
+00000000004b2c00 g O .data.rel.ro 0000000000000068 .hidden _nl_C_LC_NUMERIC
+0000000000436670 w F .text 0000000000000016 stat
+000000000045f660 w F .text 000000000000000d wmemmove
+00000000004598a0 g F .text 0000000000000076 _IO_unsave_wmarkers
+00000000004366d0 g F .text 0000000000000032 .hidden __fstatat64
+0000000000412de0 g F .text 00000000000000d7 .hidden _IO_file_open
+00000000004b4e80 g O .data.rel.ro 0000000000000010 .hidden __rtld_env_path_list
+0000000000465da0 g F .text 0000000000000bb5 .hidden _dl_map_object
+00000000004b81c0 g O .bss 0000000000004000 .hidden __pthread_keys
+00000000004858e0 g F __libc_freeres_fn 00000000000000f4 .hidden _nl_archive_subfreeres
+0000000000000008 g .tdata 0000000000000008 __libc_tsd_LOCALE
+0000000000457c70 w F .text 000000000000018e .hidden fwrite
+00000000004162e0 g F .text 000000000000003c .hidden _IO_list_unlock
+000000000047b3b0 g F .text 0000000000000119 .hidden __mpn_mul_1
+000000000049d6e0 g O .rodata 0000000000000024 .hidden _itoa_upper_digits
+00000000004824d0 g F .text 00000000000001d7 .hidden _Unwind_ForcedUnwind
+00000000004b7270 g __libc_atexit 0000000000000000 _edata
+0000000000473ce0 g F .text 00000000000000b3 .hidden __snprintf
+0000000000423600 g F .text 0000000000000168 .hidden __memset_avx512_unaligned_erms
+00000000004b6100 g O .data 0000000000000028 .hidden _dl_load_lock
+0000000000421a40 g F .text 0000000000000552 .hidden __memcpy_sse2_unaligned_erms
+000000000040c330 w F .text 00000000000003de qsort_r
+0000000000461c50 g F .text 0000000000000025 .hidden __sched_get_priority_min
+0000000000423e40 g F .text 000000000000016d .hidden __rawmemchr_evex
+0000000000414440 g F .text 000000000000009f .hidden _IO_switch_to_get_mode
+00000000004bcaa0 g __libc_freeres_ptrs 0000000000000000 .hidden _end
+00000000004bc2c0 g O .bss 0000000000000010 .hidden _dl_stack_used
+0000000000459920 g F .text 0000000000000073 .hidden __pthread_enable_asynccancel
+0000000000478c60 g F .text 00000000000001c7 .hidden _dl_fixup
+0000000000412f70 w F .text 0000000000000172 .hidden _IO_do_write
+000000000046e140 g F .text 0000000000000197 .hidden _fitoa_word
+0000000000461ad0 g F .text 00000000000000bf .hidden __fdopendir
+0000000000435dc0 g F .text 000000000000006a .hidden __clock_gettime
+000000000045c300 g F .text 0000000000000297 .hidden __memchr_avx2
+00000000004bc220 g O .bss 0000000000000030 .hidden _r_debug_extended
+00000000004bc640 g O .bss 0000000000000068 .hidden _nl_locale_file_list
+0000000000430010 g F .text 00000000000000ec .hidden __strcpy_sse2
+0000000000447f00 g F .text 0000000000000019 .hidden __gconv_release_cache
+00000000004bc250 g O .bss 0000000000000001 __nptl_initial_report_events
+000000000040d970 w F .text 0000000000000016 strtouq
+000000000040e770 g F .text 0000000000000206 __new_fclose
+000000000047d250 g F .text 000000000000006c .hidden __libc_dlerror_result_free
+00000000004b612c g O .data 0000000000000002 .hidden _dl_fpu_control
+000000000045df60 g F .text 00000000000002ce .hidden __strnlen_avx2
+0000000000458f90 g F .text 000000000000016a .hidden __wuflow
+0000000000435fc0 g F .text 0000000000000616 .hidden __sysconf
+00000000004b50e8 g O .data 0000000000000008 .hidden __x86_shared_cache_size_half
+000000000045a4e0 w F .text 00000000000002d6 pthread_mutex_lock
+000000000044ad40 g F .text 0000000000000034 .hidden __sigaction
+000000000041d1e0 g F .text 00000000000003c0 __libc_calloc
+00000000004bc7c0 g O .bss 0000000000000004 .hidden __default_pthread_attr_lock
+000000000042c520 g F .text 0000000000000555 .hidden __strcmp_avx2_rtm
+00000000004bc218 g O .bss 0000000000000008 .hidden __curbrk
+000000000043ded0 g F .text 00000000000000d4 .hidden __gconv_compare_alias
+000000000044afc0 g F .text 000000000000009d .hidden __getrandom
+00000000004b72d8 g O .bss 0000000000000004 .hidden __x86_string_control
+0000000000437da0 g F .text 000000000000005a .hidden __tfind
+00000000004b69a0 g O .data 00000000000000e8 .hidden _nl_global_locale
+00000000004bc558 g O .bss 0000000000000004 .hidden _dl_verbose
+0000000000415580 g F .text 000000000000000c _IO_default_seekoff
+0000000000469680 g F .text 0000000000000098 .hidden _dl_dprintf
+00000000004149b0 g F .text 00000000000000b7 .hidden _IO_doallocbuf
+000000000043aea0 g F .text 0000000000000057 .hidden _dl_signal_error
+00000000004bc2e8 g O .bss 0000000000000008 .hidden _dl_phnum
+0000000000415be0 w F .text 0000000000000216 _flushlbf
+00000000004623c0 g F .text 00000000000003ff _dl_exception_create_format
+00000000004b4e90 g O .data.rel.ro 0000000000000004 .hidden __stack_prot
+0000000000488240 g O .rodata 0000000000000023 .hidden __strtol_ul_rem_tab
+0000000000476d30 g F .text 0000000000000326 _dl_find_object
+00000000004618e0 g F .text 000000000000002d .hidden __closedir
+0000000000410e60 g F .text 00000000000002e3 .hidden __libc_message
+0000000000438bf0 w F .text 000000000000003d get_nprocs
+0000000000473f50 w F .text 000000000000000c __vsnprintf
+0000000000474d00 g F .text 00000000000002da .hidden __wmemchr_evex
+00000000004bc538 g O .bss 0000000000000008 .hidden _dl_profile_map
+0000000000414410 g F .text 0000000000000030 _IO_switch_to_backup_area
+0000000000417100 g F .text 000000000000015a .hidden __pthread_kill
+000000000047c840 g F .text 00000000000001b7 __dlerror
+000000000045ac30 g F .text 0000000000000115 .hidden __pthread_mutex_unlock_usercnt
+000000000040be20 g F .text 0000000000000020 .hidden exit
+0000000000481f00 g F .text 0000000000000045 .hidden _Unwind_SetGR
+0000000000440350 g F .text 00000000000005c8 __gconv_transform_internal_ucs4le
+0000000000412d80 g F .text 0000000000000027 .hidden _IO_new_file_init_internal
+000000000040d990 g F .text 000000000000045e ____strtoull_l_internal
+00000000004740e0 g F .text 0000000000000039 .hidden __nptl_stack_list_add
+00000000004375a0 g F .text 0000000000000025 .hidden __munmap
+0000000000000048 g .tbss 0000000000000008 __libc_tsd_CTYPE_TOUPPER
+000000000041d840 g F .text 0000000000000033 __malloc_usable_size
+0000000000447090 g F .text 000000000000049c .hidden __gconv_transliterate
+000000000046c730 g F .text 0000000000000187 .hidden _dl_runtime_profile_sse
+0000000000461ce0 g F .text 0000000000000128 .hidden __openat
+000000000045d560 g F .text 00000000000003ff .hidden __memcmp_avx2_movbe_rtm
+000000000042b470 g F .text 0000000000000315 .hidden __strchr_sse2_no_bsf
+00000000004b35a0 g O .data.rel.ro 0000000000000430 .hidden _sys_errlist_internal
+0000000000427520 g F .text 0000000000000010 __strcasecmp_sse2
+000000000040ddf0 w F .text 000000000000000e .hidden __strtoul_l
+000000000047ce50 g F .text 0000000000000065 ___dlmopen
+00000000004587f0 g F .text 000000000000006c .hidden _IO_wsetb
+00000000004b6bc0 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_wfile_jumps_mmap
+00000000004b5110 w O .data 0000000000000008 .hidden DW.ref.__gcc_personality_v0
+00000000004219d0 g F .text 000000000000002c .hidden __memcpy_sse2_unaligned
+000000000044b5e0 g F .text 00000000000000b7 __fprintf
+00000000004373e0 w F .text 0000000000000034 brk
+00000000004b29e0 g O .data.rel.ro 0000000000000060 .hidden _nl_C_LC_MESSAGES
+0000000000435900 g F .text 00000000000000f8 .hidden __wcsmbs_named_conv
+0000000000417a00 g F .text 000000000000000e .hidden __pthread_self
+000000000044afc0 w F .text 000000000000009d getrandom
+000000000043b0b0 g F .text 000000000000012d .hidden _dl_aux_init
+00000000004599a0 g F .text 0000000000000080 .hidden __pthread_disable_asynccancel
+00000000004bc2e0 g O .bss 0000000000000008 .hidden _dl_hwcap
+0000000000423a40 g F .text 00000000000000f9 .hidden __memset_sse2_unaligned_erms
+000000000049d720 g O .rodata 0000000000000090 .hidden _itowa_upper_digits
+0000000000457be0 g F .text 0000000000000084 _IO_wfile_doallocate
+0000000000405ac0 g F .text 000000000000014d .hidden __assert_fail_base
+000000000048bdc0 g O .rodata 0000000000000089 .hidden _nl_category_names
+0000000000461ce0 w F .text 0000000000000128 openat
+0000000000436690 g F .text 0000000000000034 __fstat
+0000000000437290 g F .text 00000000000000a8 .hidden __open64_nocancel
+000000000049a470 g O .rodata 000000000000000f .hidden _nl_C_codeset
+0000000000448310 g F .text 00000000000002b8 .hidden __gconv_create_spec
+00000000004bc300 g O .bss 0000000000000008 .hidden _dl_initfirst
+000000000042b9a0 g F .text 00000000000001e5 .hidden __strchrnul_avx2_rtm
+0000000000461cc0 g F .text 0000000000000019 __lstat
+000000000044af80 g F .text 0000000000000031 .hidden __sigprocmask
+0000000000416340 g F .text 000000000000005e .hidden _IO_str_underflow
+000000000040b880 g F .text 000000000000000b .hidden _setjmp
+0000000000411190 w F .text 0000000000000090 .hidden fgets_unlocked
+000000000044ab60 g F .text 0000000000000015 __ctype_toupper_loc
+00000000004b50d8 g O .data 0000000000000008 .hidden __x86_rep_movsb_threshold
+000000000046e2e0 g F .text 0000000000000035 .hidden __funlockfile
+000000000042bdb0 g F .text 000000000000020a .hidden __strchrnul_sse2
+0000000000423580 g F .text 000000000000001d .hidden __wmemset_avx512_unaligned
+0000000000487000 g O .rodata 0000000000000004 _IO_stdin_used
+0000000000435e30 g F .text 0000000000000050 .hidden _exit
+000000000041f2c0 g F .text 00000000000006de .hidden __memcpy_avx_unaligned_erms
+00000000004b60c0 g O .data 0000000000000028 .hidden _dl_load_write_lock
+000000000046da70 g F .text 0000000000000009 .hidden _dl_tlsdesc_return
+000000000045b130 g F .text 000000000000002d .hidden __init_sched_fifo_prio
+0000000000461810 g F .text 00000000000000c5 .hidden __alloc_dir
+0000000000474370 g i .text 000000000000001e .hidden strspn
+0000000000429320 g F .text 0000000000000010 __strcasecmp_sse42
+000000000045b020 g F .text 0000000000000015 ___pthread_once
+0000000000461990 g F .text 0000000000000034 .hidden __getdents64
+0000000000459be0 g F .text 0000000000000109 .hidden __futex_abstimed_wait_cancelable64
+00000000004309e0 g F .text 000000000000016b .hidden __strlen_avx2_rtm
+0000000000481eb0 g F .text 000000000000003c .hidden _Unwind_GetGR
+000000000042adc0 g F .text 000000000000022f .hidden __strchr_avx2_rtm
+00000000004875b8 g O .rodata 0000000000000009 .hidden _nl_default_default_domain
+00000000004bc580 g O .bss 0000000000000008 .hidden __libc_argv
+0000000000404290 g F .text 0000000000001378 .hidden __libc_start_main
+0000000000416d60 g F .text 0000000000000051 .hidden __lll_lock_wait_private
+000000000041e8e0 g i .text 0000000000000078 .hidden strlen
+0000000000436980 w F .text 000000000000002c lseek64
+000000000045ad50 g F .text 0000000000000115 ___pthread_mutex_unlock
+0000000000415260 g F .text 0000000000000081 .hidden _IO_init_internal
+0000000000436710 w F .text 0000000000000128 open
+00000000004366d0 g F .text 0000000000000032 __GI___fstatat
+00000000004b6068 w O .data 0000000000000008 program_invocation_name
+000000000046dd80 g F .text 00000000000000b9 .hidden __libc_dlsym
+000000000041bd20 g F .text 0000000000000078 .hidden __malloc_fork_unlock_parent
+00000000004780b0 g F .text 000000000000015f .hidden _dl_show_scope
+00000000004368e0 g F .text 000000000000009d .hidden __libc_write
+00000000004b4a58 g O .data.rel.ro 0000000000000008 .hidden _dl_vdso_time
+000000000045b160 g F .text 00000000000003ee .hidden __pthread_tpp_change_priority
+00000000004b6aa0 g O .data 0000000000000004 .hidden __mutex_aconf
+00000000004b3ad0 g O .data.rel.ro 0000000000000004 __rseq_size
+00000000004152f0 g F .text 0000000000000081 _IO_init
+0000000000479170 g F .text 000000000000002e .hidden _dl_sort_maps_init
+000000000040d970 g F .text 0000000000000016 __strtoul
+0000000000462300 g F .text 0000000000000019 .hidden _dl_error_free
+0000000000446300 g F .text 0000000000000d89 __gconv_transform_internal_ucs2reverse
+00000000004208d0 g F .text 000000000000003b .hidden __memcpy_avx512_unaligned
+000000000048cc80 g O .rodata 0000000000000048 .hidden _nl_C_LC_CTYPE_class_lower
+00000000004bc310 g O .bss 0000000000000008 .hidden _dl_all_dirs
+0000000000474390 g F .text 0000000000000115 .hidden __strspn_sse42
+00000000004bc2d0 g O .bss 0000000000000004 .hidden _dl_dso_sort_algo
+000000000044b3f0 g F .text 0000000000000058 .hidden __setenv
+000000000044b550 g F .text 000000000000008e .hidden __clearenv
+000000000041e680 g i .text 0000000000000070 .hidden strchr
+000000000045ea20 g F .text 0000000000000296 .hidden __strrchr_avx2
+0000000000439e60 g F .text 00000000000000fb .hidden _dl_add_to_slotinfo
+000000000041e200 g i .text 00000000000000f6 __libc_memmove
+000000000041c4b0 g F .text 00000000000004a2 __realloc
+00000000004bc5a0 g O .bss 0000000000000008 .hidden __gconv_alias_db
+0000000000416260 g F .text 0000000000000007 .hidden _IO_iter_end
+000000000041dc30 g F .text 0000000000000172 __mallopt
+0000000000457ab0 w F .text 0000000000000126 .hidden fputs
+000000000040c720 g F .text 0000000000000cc1 _quicksort
+0000000000481fe0 g F .text 000000000000000c .hidden _Unwind_GetDataRelBase
+0000000000411350 g F .text 00000000000002c8 _IO_new_file_underflow
+00000000004b50c0 g .data 0000000000000000 __data_start
+000000000047ca00 g F .text 00000000000001f9 .hidden _dlerror_run
+000000000047f1b0 g F .text 0000000000000240 .hidden _dl_sym
+0000000000411150 g F .text 0000000000000020 .hidden __libc_fatal
+0000000000438c70 g F .text 000000000000008b .hidden __get_phys_pages
+0000000000437420 g F .text 000000000000008c .hidden __sbrk
+00000000004375d0 w F .text 0000000000000025 mprotect
+00000000004161f0 g F .text 000000000000000c _IO_default_seek
+0000000000437e00 g F .text 000000000000066c .hidden __tdelete
+000000000043bd10 g F .text 000000000000000c .hidden _dl_get_dl_main_map
+00000000004bca98 g O __libc_freeres_ptrs 0000000000000008 .hidden __printf_va_arg_table
+00000000004bc220 g O .bss 0000000000000028 _r_debug
+000000000041da10 g F .text 0000000000000217 __malloc_stats
+00000000004618e0 w F .text 000000000000002d closedir
+0000000000417260 g F .text 000000000000003e ___pthread_rwlock_init
+0000000000458860 g F .text 00000000000001b2 .hidden _IO_wdefault_pbackfail
+000000000044e500 g F .text 00000000000024e1 .hidden __vfprintf_internal
+00000000004b5120 g O .data 0000000000000008 .hidden _IO_list_all
+000000000045b870 g F .text 00000000000000b0 .hidden __argz_add_sep
+00000000004139d0 g F .text 00000000000001f8 _IO_new_file_overflow
+000000000046dc00 g F .text 00000000000000a3 .hidden __libc_dlopen_mode
+000000000042e6e0 g F .text 0000000000000da9 .hidden __strcmp_sse42
+000000000044b450 g F .text 00000000000000fd .hidden __unsetenv
+00000000004118d0 g F .text 00000000000005c6 _IO_new_file_seekoff
+0000000000459cf0 g F .text 000000000000006e __futex_lock_pi64
+0000000000410cf0 w F .text 000000000000000b vasprintf
+0000000000468610 g F .text 000000000000008a .hidden _dl_sysdep_read_whole_file
+000000000041e6f0 w i .text 0000000000000078 strchrnul
+0000000000461e60 g F .text 00000000000000a0 .hidden __openat_nocancel
+00000000004773c0 g F .text 000000000000051a .hidden _dl_find_object_update
+00000000004365e0 w F .text 0000000000000025 sched_yield
+000000000047eac0 g F .text 0000000000000376 .hidden _dl_addr
+0000000000438d00 g F .text 000000000000008b .hidden __get_avphys_pages
+0000000000460ca0 g F .text 0000000000000372 .hidden __wcsnlen_avx2_rtm
+0000000000473990 g F .text 00000000000000cd .hidden __handle_registered_modifier_wc
+0000000000436710 g F .text 0000000000000128 .hidden __open64
+000000000042e430 g F .text 00000000000002a3 .hidden __strcmp_sse2_unaligned
+00000000004b31c0 g O .data.rel.ro 0000000000000050 .hidden _nl_C_LC_PAPER
+000000000043b000 g F .text 000000000000006a .hidden _dl_catch_error
+0000000000424710 g F .text 00000000000003bd .hidden __stpcpy_avx2_rtm
+0000000000414180 g F .text 0000000000000015 .hidden _IO_un_link
+00000000004840f0 g F .text 000000000000009c .hidden __register_frame_info_table
+00000000004112d0 g F .text 0000000000000075 _IO_file_setbuf_mmap
+00000000004bc540 g O .bss 0000000000000008 .hidden _dl_inhibit_rpath
+0000000000438c30 w F .text 000000000000003d get_nprocs_conf
+000000000041c960 w F .text 00000000000002b8 aligned_alloc
+0000000000416090 g F .text 000000000000015f .hidden _IO_default_pbackfail
+00000000004b4a60 g O .data.rel.ro 0000000000000008 .hidden _dl_vdso_gettimeofday
+000000000046da80 g F .text 0000000000000012 .hidden _dl_tlsdesc_undefweak
+000000000041ddb0 w F .text 000000000000030d posix_memalign
+0000000000483f70 g F .text 00000000000000b9 .hidden __register_frame_info
+000000000045fa40 w F .text 00000000000001f6 .hidden wcrtomb
+0000000000438eb0 g F .text 0000000000000025 .hidden __sysinfo
+000000000040ebc0 g F .text 00000000000000f0 __new_fopen
+0000000000423130 g F .text 000000000000002f .hidden __memset_avx2_unaligned_rtm
+0000000000439590 g F .text 0000000000000104 .hidden _dl_assign_tls_modid
+000000000045f650 g F .text 000000000000000d .hidden __wmemcpy
+0000000000416270 g F .text 0000000000000009 .hidden _IO_iter_next
+0000000000476810 g F .text 0000000000000070 .hidden _dl_close_worker
+000000000045cb40 g F .text 00000000000002ea .hidden __memchr_evex_rtm
+000000000041f2c0 g F .text 00000000000006de .hidden __memmove_avx_unaligned_erms
+00000000004394f0 g F .text 0000000000000091 .hidden _dl_tls_static_surplus_init
+00000000004b6138 g O .data 0000000000000008 .hidden _dl_pagesize
+000000000041cc20 g F .text 00000000000002b8 __valloc
+00000000004b5140 g O .data 00000000000000e0 _IO_2_1_stderr_
+00000000004b6068 g O .data 0000000000000008 __progname_full
+000000000043bd30 g F .text 0000000000000a90 .hidden _dl_tunable_set_hwcaps
+00000000004143d0 g F .text 0000000000000035 _IO_switch_to_main_get_area
+0000000000421190 g F .text 0000000000000038 .hidden __memcpy_evex_unaligned
+000000000040b890 g F .text 0000000000000031 .hidden raise
+0000000000416ce0 g F .text 0000000000000071 .hidden __libc_cleanup_pop_restore
+0000000000410b50 g F .text 0000000000000199 .hidden __vasprintf_internal
+0000000000415f80 g F .text 00000000000000a6 _IO_seekmark
+000000000048cc20 g O .rodata 0000000000000048 .hidden _nl_C_LC_CTYPE_class_alpha
+000000000041c160 g F .text 00000000000000ff free
+0000000000462090 g F .text 000000000000004d .hidden __towctrans
+00000000004b4a48 g O .data.rel.ro 0000000000000008 .hidden _dl_vdso_clock_getres_time64
+000000000044af80 w F .text 0000000000000031 sigprocmask
+00000000004153c0 g F .text 0000000000000068 _IO_old_init
+00000000004b6e00 g O __libc_IO_vtables 00000000000000a8 .hidden _IO_file_jumps_mmap
+00000000004232d0 g F .text 0000000000000274 .hidden __memset_avx512_no_vzeroupper
+000000000047d3c0 g F .text 000000000000117d .hidden _dl_map_object_deps
+00000000004b3400 g O .data.rel.ro 00000000000000b8 .hidden _nl_C_LC_IDENTIFICATION
+00000000004b6180 g O .data 00000000000000a0 .hidden _dl_ns
+000000000044a3f0 g F .text 00000000000006a2 .hidden _nl_load_locale_from_archive
+0000000000462000 w F .text 0000000000000085 wctrans
+000000000045f4f0 g F .text 00000000000000e8 .hidden __cache_sysconf
+000000000040ebc0 w F .text 00000000000000f0 fopen64
diff --git a/tests/testing/Inputs/segments-exec.objdump.p.out b/tests/testing/Inputs/segments-exec.objdump.p.out
new file mode 100644
index 0000000..e06c042
--- /dev/null
+++ b/tests/testing/Inputs/segments-exec.objdump.p.out
@@ -0,0 +1,28 @@
+
+/tmp/segments-exec: file format elf64-x86-64
+
+Program Header:
+ LOAD off 0x0000000000000000 vaddr 0x0000000000400000 paddr 0x0000000000400000 align 2**12
+ filesz 0x0000000000000550 memsz 0x0000000000000550 flags r--
+ LOAD off 0x0000000000001000 vaddr 0x0000000000401000 paddr 0x0000000000401000 align 2**12
+ filesz 0x000000000008509d memsz 0x000000000008509d flags r-x
+ LOAD off 0x0000000000087000 vaddr 0x0000000000487000 paddr 0x0000000000487000 align 2**12
+ filesz 0x000000000002948b memsz 0x000000000002948b flags r--
+ LOAD off 0x00000000000b07b8 vaddr 0x00000000004b17b8 paddr 0x00000000004b17b8 align 2**12
+ filesz 0x0000000000005ab8 memsz 0x000000000000b2e8 flags rw-
+ NOTE off 0x00000000000002a8 vaddr 0x00000000004002a8 paddr 0x00000000004002a8 align 2**3
+ filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
+ NOTE off 0x00000000000002c8 vaddr 0x00000000004002c8 paddr 0x00000000004002c8 align 2**2
+ filesz 0x0000000000000044 memsz 0x0000000000000044 flags r--
+ TLS off 0x00000000000b07b8 vaddr 0x00000000004b17b8 paddr 0x00000000004b17b8 align 2**3
+ filesz 0x0000000000000018 memsz 0x0000000000000060 flags r--
+ PROPERTY off 0x00000000000002a8 vaddr 0x00000000004002a8 paddr 0x00000000004002a8 align 2**3
+ filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
+EH_FRAME off 0x00000000000a2ee8 vaddr 0x00000000004a2ee8 paddr 0x00000000004a2ee8 align 2**2
+ filesz 0x000000000000201c memsz 0x000000000000201c flags r--
+ STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**4
+ filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-
+ RELRO off 0x00000000000b07b8 vaddr 0x00000000004b17b8 paddr 0x00000000004b17b8 align 2**0
+ filesz 0x0000000000003848 memsz 0x0000000000003848 flags r--
+
+Dynamic Section:
diff --git a/tests/testing/Inputs/segments-exec.perf_data b/tests/testing/Inputs/segments-exec.perf_data
new file mode 100644
index 0000000..65c8cca
--- /dev/null
+++ b/tests/testing/Inputs/segments-exec.perf_data
Binary files differ
diff --git a/tests/testing/Inputs/segments-shifted.objdump.0x2000.out b/tests/testing/Inputs/segments-shifted.objdump.0x2000.out
new file mode 100644
index 0000000..f843838
--- /dev/null
+++ b/tests/testing/Inputs/segments-shifted.objdump.0x2000.out
@@ -0,0 +1,12 @@
+
+/tmp/segments-shifted: file format elf64-x86-64
+
+Disassembly of section .text:
+
+0000000000002000 <correct>:
+ 2000: 48 85 ff testq %rdi, %rdi
+ 2003: 7e 0b jle 0x2010 <correct+0x10>
+ 2005: ff 05 11 40 00 00 incl 16401(%rip) # 0x601c <n>
+ 200b: 48 ff cf decq %rdi
+ 200e: 75 f5 jne 0x2005 <correct+0x5>
+ 2010: c3 retq
diff --git a/tests/testing/Inputs/segments-shifted.objdump.out b/tests/testing/Inputs/segments-shifted.objdump.out
new file mode 100644
index 0000000..7cb979b
--- /dev/null
+++ b/tests/testing/Inputs/segments-shifted.objdump.out
@@ -0,0 +1,41 @@
+
+/tmp/segments-shifted: file format elf64-x86-64
+
+SYMBOL TABLE:
+0000000000000000 l df *ABS* 0000000000000000 Scrt1.o
+000000000000037c l O .note.ABI-tag 0000000000000020 __abi_tag
+0000000000000000 l df *ABS* 0000000000000000 crtstuff.c
+0000000000001650 l F .text 0000000000000000 deregister_tm_clones
+0000000000001680 l F .text 0000000000000000 register_tm_clones
+00000000000016c0 l F .text 0000000000000000 __do_global_dtors_aux
+0000000000006018 l O .bss 0000000000000001 completed.0
+0000000000005dd8 l O .fini_array 0000000000000000 __do_global_dtors_aux_fini_array_entry
+0000000000001700 l F .text 0000000000000000 frame_dummy
+0000000000005dd0 l O .init_array 0000000000000000 __frame_dummy_init_array_entry
+0000000000000000 l df *ABS* 0000000000000000 segments.c
+0000000000000000 l df *ABS* 0000000000000000 crtstuff.c
+00000000000040d4 l O .eh_frame 0000000000000000 __FRAME_END__
+0000000000000000 l df *ABS* 0000000000000000
+0000000000005de0 l O .dynamic 0000000000000000 _DYNAMIC
+0000000000004004 l .eh_frame_hdr 0000000000000000 __GNU_EH_FRAME_HDR
+0000000000005fe8 l O .got.plt 0000000000000000 _GLOBAL_OFFSET_TABLE_
+0000000000000000 F *UND* 0000000000000000 __libc_start_main@GLIBC_2.34
+0000000000000000 w *UND* 0000000000000000 _ITM_deregisterTMCloneTable
+0000000000006008 w .data 0000000000000000 data_start
+000000000000601c g O .bss 0000000000000004 n
+0000000000006018 g .data 0000000000000000 _edata
+0000000000003048 g F .fini 0000000000000000 .hidden _fini
+0000000000006008 g .data 0000000000000000 __data_start
+0000000000000000 w *UND* 0000000000000000 __gmon_start__
+0000000000006010 g O .data 0000000000000000 .hidden __dso_handle
+0000000000004000 g O .rodata 0000000000000004 _IO_stdin_used
+0000000000006020 g .bss 0000000000000000 _end
+0000000000001620 g F .text 0000000000000026 _start
+0000000000006018 g .bss 0000000000000000 __bss_start
+000000000000170c g F .text 0000000000000016 main
+0000000000000000 F *UND* 0000000000000000 atol@GLIBC_2.2.5
+0000000000006018 g O .data 0000000000000000 .hidden __TMC_END__
+0000000000000000 w *UND* 0000000000000000 _ITM_registerTMCloneTable
+0000000000000000 w F *UND* 0000000000000000 __cxa_finalize@GLIBC_2.2.5
+0000000000003000 g F .init 0000000000000000 .hidden _init
+0000000000002000 g F .text 0000000000000011 correct
diff --git a/tests/testing/Inputs/segments-shifted.objdump.p.out b/tests/testing/Inputs/segments-shifted.objdump.p.out
new file mode 100644
index 0000000..e0815aa
--- /dev/null
+++ b/tests/testing/Inputs/segments-shifted.objdump.p.out
@@ -0,0 +1,62 @@
+
+/tmp/segments-shifted: file format elf64-x86-64
+
+Program Header:
+ PHDR off 0x0000000000000040 vaddr 0x0000000000000040 paddr 0x0000000000000040 align 2**3
+ filesz 0x00000000000002d8 memsz 0x00000000000002d8 flags r--
+ INTERP off 0x0000000000000318 vaddr 0x0000000000000318 paddr 0x0000000000000318 align 2**0
+ filesz 0x000000000000001c memsz 0x000000000000001c flags r--
+ LOAD off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**12
+ filesz 0x0000000000000618 memsz 0x0000000000000618 flags r--
+ LOAD off 0x0000000000000618 vaddr 0x0000000000001618 paddr 0x0000000000001618 align 2**12
+ filesz 0x0000000000001a3d memsz 0x0000000000001a3d flags r-x
+ LOAD off 0x0000000000003000 vaddr 0x0000000000004000 paddr 0x0000000000004000 align 2**12
+ filesz 0x00000000000000d8 memsz 0x00000000000000d8 flags r--
+ LOAD off 0x0000000000003dd0 vaddr 0x0000000000005dd0 paddr 0x0000000000005dd0 align 2**12
+ filesz 0x0000000000000248 memsz 0x0000000000000250 flags rw-
+ DYNAMIC off 0x0000000000003de0 vaddr 0x0000000000005de0 paddr 0x0000000000005de0 align 2**3
+ filesz 0x00000000000001e0 memsz 0x00000000000001e0 flags rw-
+ NOTE off 0x0000000000000338 vaddr 0x0000000000000338 paddr 0x0000000000000338 align 2**3
+ filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
+ NOTE off 0x0000000000000358 vaddr 0x0000000000000358 paddr 0x0000000000000358 align 2**2
+ filesz 0x0000000000000044 memsz 0x0000000000000044 flags r--
+ PROPERTY off 0x0000000000000338 vaddr 0x0000000000000338 paddr 0x0000000000000338 align 2**3
+ filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
+EH_FRAME off 0x0000000000003004 vaddr 0x0000000000004004 paddr 0x0000000000004004 align 2**2
+ filesz 0x0000000000000034 memsz 0x0000000000000034 flags r--
+ STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**4
+ filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-
+ RELRO off 0x0000000000003dd0 vaddr 0x0000000000005dd0 paddr 0x0000000000005dd0 align 2**0
+ filesz 0x0000000000000230 memsz 0x0000000000000230 flags r--
+
+Dynamic Section:
+ NEEDED libc.so.6
+ INIT 0x0000000000003000
+ FINI 0x0000000000003048
+ INIT_ARRAY 0x0000000000005dd0
+ INIT_ARRAYSZ 0x0000000000000008
+ FINI_ARRAY 0x0000000000005dd8
+ FINI_ARRAYSZ 0x0000000000000008
+ GNU_HASH 0x00000000000003a0
+ STRTAB 0x0000000000000470
+ SYMTAB 0x00000000000003c8
+ STRSZ 0x000000000000008d
+ SYMENT 0x0000000000000018
+ DEBUG 0x0000000000000000
+ PLTGOT 0x0000000000005fe8
+ PLTRELSZ 0x0000000000000018
+ PLTREL 0x0000000000000007
+ JMPREL 0x0000000000000600
+ RELA 0x0000000000000540
+ RELASZ 0x00000000000000c0
+ RELAENT 0x0000000000000018
+ FLAGS_1 0x0000000008000000
+ VERNEED 0x0000000000000510
+ VERNEEDNUM 0x0000000000000001
+ VERSYM 0x00000000000004fe
+ RELACOUNT 0x0000000000000003
+
+Version References:
+ required from libc.so.6:
+ 0x09691a75 0x00 03 GLIBC_2.2.5
+ 0x069691b4 0x00 02 GLIBC_2.34
diff --git a/tests/testing/Inputs/segments-shifted.perf_data b/tests/testing/Inputs/segments-shifted.perf_data
new file mode 100644
index 0000000..2c7f6dc
--- /dev/null
+++ b/tests/testing/Inputs/segments-shifted.perf_data
Binary files differ
diff --git a/tests/testing/cPerf.py b/tests/testing/cPerf.py
index 6683d08..e7c4299 100644
--- a/tests/testing/cPerf.py
+++ b/tests/testing/cPerf.py
@@ -195,6 +195,39 @@
self.assertEqual(p.data, self.expected_data['fib2-aarch64'])
+ def _check_segment_layout(self, suffix):
+ counter_name = 'cpu-clock'
+ p = self._loadPerfDataInput('segments-%s.perf_data' % suffix)
+
+ counters = p.data['counters']
+ self.assertIn(counter_name, counters)
+ self.assertGreater(counters[counter_name], 10000000)
+
+ functions = p.data['functions']
+ self.assertIn('correct', functions)
+
+ f_counters = functions['correct']['counters']
+ self.assertIn(counter_name, f_counters)
+ self.assertGreater(f_counters[counter_name], 98.0)
+
+ f_instructions = functions['correct']['data']
+ self.assertGreater(len(f_instructions), 0)
+
+ def test_segment_layout_dyn(self):
+ # Test handling of a regular shared library or position-independent
+ # executable (ET_DYN).
+ self._check_segment_layout('dyn')
+
+ def test_segment_layout_exec(self):
+ # Test handling of a traditional ELF executable (ET_EXEC).
+ self._check_segment_layout('exec')
+
+ def test_segment_layout_shifted(self):
+ # ET_DYN ELF files usually have virtual addresses equal to offsets
+ # in the file but it is not required and this assumption is actually
+ # violated by some ELF files.
+ self._check_segment_layout('shifted')
+
def test_random_guff(self):
# Create complete rubbish and throw it at cPerf, expecting an
# AssertionError.